一、接口测试流程:
1、到接口文档,熟悉接口业务:地址、端口、鉴权、入参和结果、错误码等
2、设计接口测试功能用例和评审
正例:输入正常参数,严重接口能够正常返回。(接口只对内部系统)
反例:(接口只对外部系统)
鉴权异常:为空、错误、过期
参数异常:为空、长度异常、类型异常、其他业务异常....
其他异常:黑名单、调用次数限制、分页场景
兼容异常:一个接口被多端调用、版本的兼容
3、使用接口工具(jmeter)
4、无人值守,持续集成,输出报告到企微、钉钉等。
二、jmeter组件(10大组件)
(1)组件的执行顺序:
** 1. 测试计划:jmeter测试的起点,容器 --固定顺序**
** 2. 线程组:代表一定的用户 --固定顺序**
** 3. 配置元件:配置请求 --固定顺序**
4. 前置处理器:请求之前的操作
5. 定时器:请求之前延迟请求
6. 逻辑控制器:请求之前处理请求逻辑
7. 取样器:发送请求的最小单元
8. 后置处理器:请求之后的操作(比如:提取数据)
9. 断言:请求之后判断请求结果是否正常
10. 监视器:请求之后搜集测试结果
(2)组件的作用域:
结论1:组件可以作用于同级组件
结论2:组件可以作用于同级组件下面的组件
结论3:组件可以作用于上级组件(父组件)
jmeter文件夹介绍:
backups:备份
bin 存放启动文件,配置文件
docs 离线文件
extras 集成文件
lib 库文件
licenses 许可文件


jmeter.bat 是启动文件
jmeter.propties是全局配置文件
三、目前市面上的三类接口
1、基于webservice协议的接口,通过xml传输数据 --比较老
2、基于dubbo协议接口,通过json传输数据 --微服务架构
3、基于http协议接口(Restful架构:get、post、put、delete),通过json传输数据 --常用最多
由下面两种数据组成的就叫json。
【】多个值,数组
代表对象,里面的键值对是对象的属性
name:巴里
age:35
http协议:请求和响应
请求:请求方式、请求路径、请求头、请求数据(报文)
响应:响应码、响应信息、响应头、响应数据(报文)
token鉴权码
四、jmeter接口测试实战
http默认端口:80
https默认端口:443
接口关联:
1、正则表达式
* 变量名:可以随意定义
* 正则表达式:要包括有左边界和右边界以及(.*?),而且必须唯一
* $1$表示取第一个正则,$2$表示取第二个正则
* 匹配数字,表示取第一个匹配到的值
* 默认值,没有匹配到就使用默认值

2、JSON提取器
jsonpath语法规则:只能适用于json数据
1)$代表根目录:
2).代表子节点:
$.acces
$.token_type
$.* 根目录下的所有子节点
3)取数据组的值:通过【下标】,下标从0开始
总结:看到用.key,看到【】用【下标】

- 变量名:随意定义
- jsonpaht表达式:参考以上josn提取器规则
- 匹配数字:表示取第一个匹配到的值
- 默认值:没有匹配大就使用默认值
浙公网安备 33010602011771号