深入理解接口测试:实用指南与最佳实践5.0(一)

在这里插## 标题入图片描述

> 						大家好,我是程序员小羊!

✨博客主页: https://blog.csdn.net/m0_63815035?type=blog

💗《博客内容》:.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识
📢博客专栏: https://blog.csdn.net/m0_63815035/category_11954877.html
📢欢迎点赞 👍 收藏 ⭐留言 📝
📢本文为学习笔记资料,如有侵权,请联系我删除,疏漏之处还请指正🙉
📢大厦之成,非一木之材也;大海之阔,非一流之归也✨

在这里插入图片描述

前言

这一阶段是接口测试的学习,我们接下来的讲解都是使用Postman这款工具,当然呢Postman是现在一款非常流行的接口调试工具,它使用简单,而且功能也很强大。不仅测试人员会使用,开发人员也会 经常使用。后期讲解大概分三部分进行讲解:
1、根据接口API文档编写接口测试用例
2、使用Postman工具进行接口测试,并能够对大量接口用例进行管理、对接口响应结果进行断言、处理多接口的依赖及生成测试报告
3、使用Python+Requests封装的接口测试框架,实现接口对象封装、测试用例编写、测试数据管理及生成测试报告

目录

  • 前言
  • day00 一、postman相关环境配置
    • 1.1安装postman
    • 1.2安装Nodejs安装
      • 1. 2.1安装node.js
      • 1.2.3、Nodejs安装确认
    • 1.3Newman安装及确认
        • 1.3.1安装newman-reporter-htmlextra
      • 扩展:附带在线下载链接,当然我也会把安装包免费放在资源区
  • day01二、接口测试理论、HTTP协议、接口测试流程、接口文档解析
  • 本节目标:
    • 能够分析HTTP协议的请求和响应数据
    • 完成ihrm系统指定接⼝的API⽂档解析
    • 一、了解什么是接口(接口可分为:硬件接口和软件接口;我们这里只关注软件层面的接口)
    • 1.1接口测试理论
    • 1.2实现方式
    • 二、接口基础知识(HTTP协议)
    • 2.1HTTP协议介绍
    • 2.2HTTP协议的特点
    • 2.3URL
    • 小练习:
    • 3.1HTTP请求
    • 请求行:
    • 请求头:
    • 请求头补充(了解)典型的请求头还有:
    • 请求体:
    • 3.1HTTP响应
    • 状态行
    • 响应头:
    • 响应体
    • 三、接口风格(传统接口风格和Restful风格)
    • 传统接口风格
    • RESTful风格接口
    • RESTful架构特点
    • 传统和RESTful接口区别
    • 四、接口测试流程及接口文档解析
    • 1、接口测试流程
    • 2、接口文档解析
    • 2.1 什么是接口文档?
    • 2.2 为什么要写接口文档?
    • 2.3 为什么要解析接口文档
    • 2.4 接口文档内容
  • 接口测试-day01-作业
  • 接口测试-day01-作业-答案

day00 一、postman相关环境配置

1.1安装postman

具体请参考postman相关环境配置这篇博文

在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果注册成功后,只能在浏览器中打开postman,而不能在 app中打开,可尝试如下操作。

1.在app中点击“sign in”
在这里插入图片描述

1.2安装Nodejs安装

作用:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言。
要想给 postman 安装 newman 插件,必须 先 安装 node.js。 这是前提!

1. 2.1安装node.js

1、可能你使⽤的电脑,曾经安装过 node.js。先测试下,有没有。
2、cmd 打开命令提示符,输⼊命令 npm -v,如果能查看到npm的版本号信息(具体版本号是多少⽆所谓), 可跳过 “1. 安装node.js” 这步,直接看 “ 2. 安装 newman”

在这里插入图片描述
如显示, npm 命令⽆法识别,则按如下流程安装
下载 node.js(安装包我会放在资源区免费下载,此步可跳过。 这⾥只是介绍下载位置)
https://nodejs.org/zh-cn/download/
在这里插入图片描述在这里插入图片描述
2、安装node.js
双击 .msi 安装包,勾选接受⽤户协议,不做任何设置。⼀路 “下⼀步” 即可。
在这里插入图片描述
3、一步步的往下面点就行
4、这里默认路径可以改一下

在这里插入图片描述
5、点击finish就OK了在这里插入图片描述

1.2.3、Nodejs安装确认

安装完成,查验 node.js 是否安装成功!

1、cmd 打开 新的 终端窗⼝ 输⼊ npm -v 。如能看到版本号(具体版本号多少⽆所谓),代表 node.js 安装成功
2. 输入node -v

在这里插入图片描述

1.3Newman安装及确认

作用:Postman的一个命令行运行器。可以直接使用相关命令运行Postman导出的相关脚本、进 而实现后续的接口测试持续集成。
安装newman (前提:确保 npm -v 验证通过)
安装newman前,必须保证 node.js 已经装成功!!!

注意事项

在线安装命令:npm install -g newman
注意:使⽤ “管理员” 身份,启动 命令提示符,写⼊命令。
如果安装失败。避开⽹络访问⾼峰期(早7:30~9:3011:30~14:3018:30~22:30)再安装,尝试 10⼏次 或 ⼏
⼗次 也是有可能的!
注意:Windows 终端 有缺陷!安装过程中,不要⽤⿏标 点击 终端⻚⾯(别⽤⿏标点⿊窗⼝⾥⾯)。

在这里插入图片描述
99%的⼈都能 在线安装成功。多尝试⼏遍
剩下的 1%,只能尝试离线安装。⽐较麻烦。步骤如下:

1. 找到 C:\Users\xxx\AppData\Roaming\npm 这个⽬录。(xxx)是你的⽤户主⽬录,每个⼈都不同。
2. 将 npm ⽬录原来的 所有内容 都删除。(这些⽂件是 node.js 安装成功,⾃动⽣成的)
3. 将 “npm.rar” 压缩包 的 内容 解压缩到这⾥。

在这里插入图片描述

4. 解压完,⼤致这样!(强调:安装后npm⽬录只有⼀个,不要在原来的npm⾥再套npm⽬录)

在这里插入图片描述

5. cmd 打开新终端。 输⼊ newman -v 看到版本号,说明离线安装成功!

在这里插入图片描述

1.3.1安装newman-reporter-htmlextra

安装命令:npm install -g newman-reporter-htmlextra
注意:使⽤ “管理员” 身份,启动 命令提示符,写⼊命令。
只要 newman 安装成功,此插件⼀定能安装成功,如失败,可多尝试⼏次。
没有红色的报错信息就是一切正常
在这里插入图片描述
暂时无法验证指令,后面生成测试报告时 方可验证。

扩展:附带在线下载链接,当然我也会把安装包免费放在资源区

newman:https://github.com/postmanlabs/newman
newman-reporter-html:https://github.com/postmanlabs/newman-reporter-html

day01二、接口测试理论、HTTP协议、接口测试流程、接口文档解析

本节目标:

能够分析HTTP协议的请求和响应数据

完成ihrm系统指定接⼝的API⽂档解析

一、了解什么是接口(接口可分为:硬件接口和软件接口;我们这里只关注软件层面的接口)

1.1接口测试理论

概念:

接⼝:系统之间(外部系统与内部系统,内部系统与内部系统)数据交通的通道。
接⼝测试:校验 接⼝回发的 响应数据 与 预期结果 是否⼀致。

在这里插入图片描述

接⼝测试,可以绕过前端界⾯。直接对 服务器进⾏测试!!!

价值:

1、可以发现⻚⾯测试发现不了的问题
2、符合 质量控制前移理念
3、低成本,⾼收益!

1.2实现方式

使用接口测试工具来实现(比如:JMeter、Postman)
通过编写代码来实现(比如:Python + Requests+Unittest或者java + HttpClient)
补充:自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程
接口自动化测试是让程序或工具代替人工自动的完成对接口进行测试的一种过程
postman:使⽤简单,上手难度低。功能较少。
jmeter:使⽤难度较大。上手难度大。功能齐全。

二、接口基础知识(HTTP协议)

2.1HTTP协议介绍

HTTP:(HyperText Transfer Protocol)超文本传输协议,是一个基于请求与响应模式的、应用层的协议,也是互联网上应用最为广泛的一种网络协议。简单来说:协议就是 规则!要求使⽤协议的双⽅必须 严格 遵守!!!

2.2HTTP协议的特点

  1. 支持客户端/服务器模式
  2. 简单快速
  3. 灵活
  4. 无连接
  5. 无状态

2.3URL

URL:(Uniform Resource Locator)统一资源定位符,是互联网上标准资源的地址。HTTP使用URL来建立连接
和传输数据。
在这里插入图片描述

协议部分:“http”,常见的协议有HTTP,HTTPS、FTP等
作用:指定数据传输规则
域名部分:“www.itcast.cn”,也可以使用IP地址作为域名使用
作用:在网络环境中,唯⼀定位一台主机
端口部分:“8080”,端口可以省略,默认端口(HTTP:80,HTTPS:443,FTP:21)
作用:在 主机上,唯⼀定义个应⽤程序
资源路径部分:“/news/index.html”
作用:应用对应的数据资源。 可以省略。如果省略,资源路径为 “/”
查询参数部分:“uid=123&page=1”,可以允许有多个参数,多个之间用“&”作为分隔符
作用:给资源传递参数

小练习:

请写出以下URL的各个组成部分。这个URL没有写出端⼝号,它的端⼝是什么?
http://www.weather.com.cn/data/sk/101010100.html

3.1HTTP请求

说明:http请求由三部分组成,分别是:请求行、请求头、请求体
了解http请求⼀定产生于客户端。当客户端给服务器发送请求时,使用该协议。(请求报文、请求包)

在这里插入图片描述
【示例】:
在这里插入图片描述

请求行:

请求行用来说明请求方法、要访问的资源以及所使用的协议版本

⼀定位于 http请求协议的,第⼀⾏。格式:请求⽅法(空格) URL(空格) 协议版本
请求方法

请求头:

请求头紧接着请求行,请求头部由键值对组成,每行一对。 请求头部通知服务器有关于客户端请求的信息

在这里插入图片描述

请求头补充(了解)典型的请求头还有:

在这里插入图片描述

请求体:

在这里插入图片描述
在这里插入图片描述

3.1HTTP响应

HTTP响应也由三个部分组成,分别是:状态行、响应头、响应体
一定产生与服务端。 当服务器接收到 http请求协议 之后,才会产生http响应协议(响应报文、响应包)。

在这里插入图片描述
在这里插入图片描述
【示例】:
在这里插入图片描述

状态行

⼀定位于 http响应协议的,第一行。
格式:协议版本 (空格) 状态码 (空格) 状态码描述 状态行由协议版本号、状态码、状态消息三部分组成
状态码有三位数字组成,第一个数字定义了响应的类别:

1xx:指示信息--表示请求已接收,继续处理
2xx:成功--表示请求已被成功接收、理解、接受
3xx:重定向--要完成请求必须进行更进一步的操作
4xx:客户端错误--请求有语法错误或请求无法实现
5xx:服务器端错误--服务器未能实现合法的请求

在这里插入图片描述

响应头:

响应头用于描述服务器的基本信息,以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理 响应数据
位于响应行之下,空行之上的部分。 数据组织格式 ⼀定是 k:v 对。

响应体

位于 空行之下,几乎所有响应协议都有响应体。
响应体中包含的数据,是接口测试过程中,所要使用的实际结果!!
总的来说响应体就是响应的消息体,数据可以是普通文本、XML、JSON、HTML源码

三、接口风格(传统接口风格和Restful风格)

如何让前端开发与后台接口开发人员更好的配合,提高工作效率?
答:无规矩不成方圆,那就是制定接口规范

接口规范暂时,我们常用的是这两种
1、传统接口风格
2、RESFful接口风格

传统接口风格

在这里插入图片描述

RESTful风格接口

说明: 一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。
REST:即(Representational State Transfer)的缩写。词组的翻译是"表现层状态转化"。如果一个架构符合REST原则,就称它为RESTful架构。简单的概括为以下:
1、接口使用的方法,与http协议的 请求方法,⼀⼀对应。
2、get - 查、post - 增、put - 改、delete - 删
3、URL 与资源 ⼀⼀对应!不能从 URL 中,看出 是 何种操作。 需要通过 结合 请求方法 来识别何种操作。
4、 响应状态码 使用较为全面。

在这里插入图片描述

RESTful架构特点

  1. 每一个URL代表一种资源;
  2. 客户端和服务器之间,传递这种资源的某种表现层;
  3. 客户端通过四个HTTP动词,对服务器端资源进行操作,实现"表现层状态转化";
  4. 接口之间传递的数据最常用格式为JSON。

常用的HTTP动词有下面四个:

GET:从服务器获取资源(一项或多项)
POST:在服务器新建一个资源
PUT:在服务器更新资源(客户端提供改变后的完整资源)
DELETE:从服务器删除资源

传统和RESTful接口区别

在这里插入图片描述

四、接口测试流程及接口文档解析

1、接口测试流程


  1. 需求分析(产品经理的需求文档)
  2. 接口文档解析(开发编写的 接口API文档)
  3. 设计 接口测试用例(编写 Excel 表格形式的⽤例)
  4. 准备接口测试脚本 (设计测试用例)
    postman 工具 生成脚本
    python 代码 编写脚本
  5. 执行测试用例,跟踪缺陷
  6. 生成 接口测试报告
  7. 接口自动化持续集成(可选)

在这里插入图片描述

2、接口文档解析

2.1 什么是接口文档?

接口文档:又称为API文档,一般是由后端开发人员所编写的,用来描述系统所提供接口信息的文档。 大家都根据这个接口文档进行开发,并需要一直维护和遵守。
作用:
协同:团队⼈员⼯作协同配合
约束:项目更新修改同步维护

2.2 为什么要写接口文档?

  1. 能够让前端开发与后台开发人员更好的配合,提高工作效率。(有一个统一参考的文件)
  2. 项目迭代或者项目人员更迭时,方便后期人员查看和维护
  3. 方便测试人员进行接口测试

2.3 为什么要解析接口文档

通过分析接口文档,熟悉接口信息。
通过接口文档获取,接口测试所使用的 请求数据预期结果

解析的核心目标:

  1. 请求报文关键数据 请求方法、URL、请求数据(请求头、请求体)
  2. 响应报文关键数据 响应状态码、响应数据(响应体)

2.4 接口文档内容

一个规范的接口文档,要包含以下信息:
基本信息 :接口名称、请求方法、请求路径、接口描述
请求参数:请求头请求体(包含具体的请求参数名称、参数类型、是否必须、示例、备注)
返回数据:不同情况的响应状态码响应数据(包含具体的响应数据名称、类型、是否必须、默认值、示例、备注)

案例如下:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

接口测试-day01-作业

1,请简述接口的概念?

答案:


2,请简述接口测试的概念

答案:


3,为什么要进行接口测试?(价值)

答案:


4,我们可以使用哪些方式来实现接口测试?

答案:


5,请写出HTTP协议的5个特点

答案:


6,写出URL的格式,由哪 5 部分组成?

答案:


7,请写出 URL http://www.itcast.cn/subject/pythonzly/index.shtml?a=1&b=2 中,每个部分的内容

答案:


8,一个只有资源路径和查询参数的字符串,按URL规则解析时,查询参数有哪些,用什么符号隔分?

/seeyon/meeting.do?method=create&listMethod=listMyMeeting

答案:


9,以下关于HTTP请求的描述,错误的是?

A: HTTP请求包括了请求行,请求头,请求体

B: HTTP请求行包括协议/版本,URL,请求方法

C: HTTP请求头用于描述客户端信息

D: HTTP请求头中Content-Type用于描述客户端浏览器类型

E: HTTP请求中,只有Post请求才有请求体。

F: HTTP请求中,按照标准规范,请求的数据类型是由Content-Type来进行标志的。

答案


10,在HTTP请求中,有哪些常用的请求方法?

答案:


11,HTTP响应主要包括哪几个部分?

答案:


12,简述接口测试流程。

答案:


13,有如下 http请求,请分别写出 请求方法、URL、协议和域名、资源路径、请求行、请求头、请求体。

POST http://demo.zentao.net/user-login.html HTTP/1.1
Host: demo.zentao.net
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: http://demo.zentao.net/user-login.html
Content-Type: application/x-www-form-urlencoded
Content-Length: 54
Connection: keep-alive
Upgrade-Insecure-Requests: 1account=demo&password=efc4a3b32e48054865e5a8321cfda3e4

答案:


14,有如下 http 响应包,请分别写出 响应状态码、状态码描述、状态行、响应头、响应体的内容。

HTTP/1.1 200 OK
Date: Fri, 22 May 2009 06:07:21 GMT
Content-Type: text/html; charset=UTF-8<html><head></head><body>...</body>
</html>

答案:


15,查看 《iHRM人力资源管理系统-API文档.pdf》中 “3.员工管理” 下的 “员工修改” 接口。写出:请求方法、资源路径、协议和域名、URL、请求行、请求头、请求体(请求体内容,任意举例一二即可)

答案:


接口测试-day01-作业-答案

1,请简述接口的概念?

答案:

接口,是数据交互的通道。用来实现 系统 之间的数据交互。

2,请简述接口测试的概念

答案:

接口测试,主要是对系统之间的接口进行测试。校验接口响应数据是否与预期数据一致。

3,为什么要进行接口测试?(价值)

答案:

1. 质量控制前移
2. 可以发现一些页面测试发现不了的问题。
3. 低成本高效益

4,我们可以使用哪些方式来实现接口测试?

答案:

工具实现:postman、jmeter
代码实现:Python + Requests 	 或	java + HttpClient

5,请写出HTTP协议的5个特点

答案:

1. 支持客户端/服务器模式
2. 简单快速
3. 灵活
4. 无连接
5. 无状态

6,写出URL的格式,由哪 5 部分组成?

答案:

协议://域名:端口/资源路径?查询参数&查询参数&...

7,请写出 URL http://www.itcast.cn/subject/pythonzly/index.shtml?a=1&b=2 中,每个部分的内容

答案:

协议:http
域名:www.itcast.cn
端口:80
资源路径:/subject/pythonzly/index.shtml
查询参数:a=1&b=2

8,一个只有资源路径和查询参数的字符串,按URL规则解析时,查询参数有哪些,用什么符号隔分?

/seeyon/meeting.do?method=create&listMethod=listMyMeeting

答案:

method=create 和 listMethod=listMyMeeting 
用 & 隔分

9,以下关于HTTP请求的描述,错误的是?

A: HTTP请求包括了请求行,请求头,请求体

B: HTTP请求行包括协议/版本,URL,请求方法

C: HTTP请求头用于描述客户端信息

D: HTTP请求头中Content-Type用于描述客户端浏览器类型

E: HTTP请求中,只有Post请求才有请求体。

F: HTTP请求中,按照标准规范,请求的数据类型是由Content-Type来进行标志的。

答案

D. 说明:User-Agent 描述客户端浏览器类型。 Content-Type 描述请求体数据类型。
E. 说明:Put请求 也可以有请求体

10,在HTTP请求中,有哪些常用的请求方法?

答案:

GET、POST、PUT、DELETE

11,HTTP响应主要包括哪几个部分?

答案:

状态行、响应头、空行、响应体

12,简述接口测试流程。

答案:

1,需求分析
2,解析接口文档
3,设计接口测试用例
4,执行接口测试用例
5,接口缺陷管理和跟踪
6,生成测试报告
7,接口自动化测试和持续集成

13,有如下 http请求,请分别写出 请求方法、URL、协议和域名、资源路径、请求行、请求头、请求体。

POST http://demo.zentao.net/user-login.html HTTP/1.1
Host: demo.zentao.net
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: http://demo.zentao.net/user-login.html
Content-Type: application/x-www-form-urlencoded
Content-Length: 54
Connection: keep-alive
Upgrade-Insecure-Requests: 1account=demo&password=efc4a3b32e48054865e5a8321cfda3e4

答案:

请求方法: post
URL: http://demo.zentao.net/user-login.html
协议和域名: http://demo.zentao.net
资源路径: user-login.html
请求行: POST http://demo.zentao.net/user-login.html HTTP/1.1
请求头:
Host: demo.zentao.net
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: http://demo.zentao.net/user-login.html
Content-Type: application/x-www-form-urlencoded
Content-Length: 54
Connection: keep-alive
Upgrade-Insecure-Requests: 1请求体:
account=demo&password=efc4a3b32e48054865e5a8321cfda3e4

14,有如下 http 响应包,请分别写出 响应状态码、状态码描述、状态行、响应头、响应体的内容。

HTTP/1.1 200 OK
Date: Fri, 22 May 2009 06:07:21 GMT
Content-Type: text/html; charset=UTF-8<html><head></head><body>...</body>
</html>

答案:

响应状态码: 200
状态码描述: OK
状态行: HTTP/1.1 200 OK
响应头:
Date: Fri, 22 May 2009 06:07:21 GMT
Content-Type: text/html; charset=UTF-8
响应体:
<html><head></head><body>...</body>
</html>

15,查看 《iHRM人力资源管理系统-API文档.pdf》中 “3.员工管理” 下的 “员工修改” 接口。写出:请求方法、资源路径、协议和域名、URL、请求行、请求头、请求体(请求体内容,任意举例一二即可)

答案:

请求方法: put
URL: http://ihrm-test.itheima.net/api/sys/user/:target
协议和域名: http://ihrm-test.itheima.net
请求行: put http://ihrm-test.itheima.net/api/sys/user/:target HTTP/1.1
请求头: 
Content-Type: application/json
Authorization: Bearer f5050a1b-7919-444c-9ec4-3c1a7286536d
请求体:
{"username":"欧阳踹踹"}
今天这篇文章就到这里了,大厦之成,非一木之材也;大海之阔,非一流之归也。感谢大家观看本文

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/470491.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024.11.12_大数据的诞生以及解决的问题

大数据的诞生以及解决的问题 视频一&#xff1a;大数据诞生的背景原因&#xff1a;传统的数据处理架构无法满足海量的数据存储和计算需求 视频三&#xff1a;区分离线处理场景和实时处理场景视频五&#xff1a;传统的大数据与现代的大数据区别&#xff08;离线场景&#xff09;…

ML 系列: 第 24 节 — 离散概率分布(泊松分布)

目录 一、说明 二、固定时间间隔示例 三、固定间隔的示例 四、泊松分布的主要特征 五、示例 5.1 平均客户数的计算&#xff1a; 5.2 用于计算和绘制泊松分布的 Python 代码&#xff1a; 一、说明 泊松概率分布是一种离散概率分布&#xff0c;它表示在固定的时间或空间间隔内发生…

闯关leetcode——3174. Clear Digits

大纲 题目地址内容 解题代码地址 题目 地址 https://leetcode.com/problems/clear-digits/description/ 内容 You are given a string s. Your task is to remove all digits by doing this operation repeatedly: Delete the first digit and the closest non-digit cha…

机器情绪及抑郁症算法

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;编程探索专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年11月12日17点02分 点击开启你的论文编程之旅https://www.aspiringcode.com/content?id17230869054974 计算机来理解你的情绪&a…

【深圳大学】数据结构A+攻略(计软版)

1. 考试 1.1 形式 分为平时&#xff0c;笔试&#xff0c;机试三部分。其中&#xff1a; 平时占30%&#xff0c;包含平时OJ测验和课堂练习&#xff0c;注意这个可能会因老师的不同和课题组的新策略而改变。笔试占60%&#xff0c;是分值占比的主要部分。机试占10%。 1.2 题型…

Chrome使用IE内核

Chrome使用IE内核 1.下载扩展程序IE Tab 2.将下载好的IE Tab扩展程序拖拽到扩展程序界面&#xff0c;之后重启chrome浏览器即可

使用pytest+openpyxl做接口自动化遇到的问题

最近使用pytestopenpyxl做了个接口自动化的小项目&#xff0c;遇到了一些问题。 首先&#xff0c;使用pytest这个框架&#xff0c;主要是使用了pytest.fixture, pytest.mark.parametrize这两个fixture去做参数化&#xff0c;里面注入的数据是用openpyxl来实现的。 接口介绍&a…

IEC60870-5-104 协议源码架构详细分析

IEC60870-5-104 协议源码架构 前言一、资源三、目录层级一二、目录层级二config/lib60870_config.hdependencies/READMEexamplesCMakeLists.txtcs101_master_balancedcs104_client_asyncmulti_client_servertls_clienttls_server说明 make这些文件的作用是否需要导入这些文件&a…

TensorRT基础知识

github:https://github.com/NVIDIA/TensorRT 官网快速入门链接&#xff1a;Quick Start Guide :: NVIDIA Deep Learning TensorRT Documentation 引言&#xff1a; TensorRT 是 NVIDIA 推出的一个高性能深度学习推理库&#xff0c;专门用于优化和加速已经训练好的深度学习模型…

jenkins提交gitee后自动部署

jenkins中安装gitee插件 Gitee Plugin​​​​​​ 配置gitee WebHook 生成giteeHook密码 去gitee中配置webHook 输入jenkins中的url和生成的密码 当我们再提交后就可以自动部署 gitee官方配置

软件测试面试八股文(超详细整理)

请你说一说测试用例的边界 参考回答&#xff1a; 边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充&#xff0c;这种情况下&#xff0c;其测试用例来自等价类的边界。 常见的边界值 1)对16-bit 的整数而言 32…

【金融风控】特征评估与筛选详解

内容介绍 掌握单特征分析的衡量指标 知道 IV&#xff0c;PSI等指标含义 知道多特征筛选的常用方法 掌握Boruta,VIF,RFE,L1等特征筛选的使用方法 【理解】单特征分析 什么是好特征 从几个角度衡量&#xff1a;覆盖度&#xff0c;区分度&#xff0c;相关性&#xff0c;稳定…

链游系统定制化开发:引领游戏产业的新时代

在数字革命的浪潮中&#xff0c;链游&#xff08;区块链游戏&#xff09;作为一种新兴游戏形式&#xff0c;正重新定义游戏产业的发展方向。链游将区块链技术与传统游戏结合&#xff0c;使游戏体验更加公平透明&#xff0c;并赋予玩家真正的资产所有权。这一领域不仅为玩家带来…

2024 年 8 个最佳 API 设计工具图文介绍

8 个最佳 API 设计工具推荐&#xff0c;包括 Apifox、Postman、Swagger、Insomnia、Stoplight、Hoppscotch、RapidAPI和Paw。 详细介绍&#xff1a;2024 年 8 个最佳 API 设计工具推荐

知识库管理系统:企业数字化转型的加速器

在数字化转型的大潮中&#xff0c;知识库管理系统&#xff08;KBMS&#xff09;已成为企业提升效率和创新能力的关键工具。本文将探讨知识库管理系统的定义、企业建立知识库的必要性&#xff0c;以及如何快速搭建企业知识库。 知识库管理系统是什么&#xff1f; 知识库管理系统…

24/11/12 算法笔记<强化学习> Policy Gradient策略梯度

gradient的核心就是每次更新前要重新收集&#xff0c;每个阶段的actor是不一样的. 策略梯度算法的核心思想&#xff1a; 策略表示&#xff1a;首先&#xff0c;策略梯度方法需要一个策略&#xff0c;该策略能够根据当前的状态选择一个动作。这个策略通常由一个参数化的函数表示…

物理设备命名规则(Linux网络服务器 15)

Linux系统中的一切都是文件&#xff0c;硬件设备也不例外。既然都是文件&#xff0c;就必须有文件名称。系统内核中udev设备管理器会自动把硬件名称规范化起来&#xff0c;目的是让用户通过设备文件的名字可以大致了解设备属性以及分区信息。这对于陌生的设备来说特别方便。另外…

SciPy:Python 科学计算工具包的全面教程

SciPy&#xff1a;Python 科学计算工具包的全面教程 引言 在数据科学和科学计算的领域&#xff0c;Python 已经成为一种流行的编程语言。作为 Python 的核心库之一&#xff0c;SciPy 提供了高效的数值计算功能&#xff0c;是科学计算、工程和数学应用中不可或缺的工具。本文将…

SAP_MM_SD_PP_FICO_视频课程几乎免费送

朋友们&#xff0c;都已经是2024年了&#xff0c;SAP中国区都已经被合并到樱花国的亚太区了&#xff0c;SAP上海研发中心也陆续撤离中*&#xff0c;竟然还有朋友花上万RMB学习SAP&#xff0c;钱花了可以在挣&#xff0c;主要是那个视频课程一个模块下来就得上百个小时&#xff…

如何在Puppeteer中实现表单自动填写与提交:问卷调查

一、介绍 在现代市场研究中&#xff0c;问卷调查是一种重要的工具。企业通过在线问卷调查了解消费者对产品或服务的需求、偏好和满意度&#xff0c;从而为产品开发、市场营销和服务优化提供指导。然而&#xff0c;对于爬虫技术专家来说&#xff0c;批量自动化地填写和提交问卷…