文章目录
- 断言
- 一、响应断言
- 1.响应断言
- 2.示例
- 二、JSON断言
- 1.JSON断言
- 2.示例
- 三、大小断言![在这里插入图片描述](https://s2.51cto.com/images/blog/202312/21021651_65832f9388ac125204.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
- 四、断言持续时间![在这里插入图片描述](https://s2.51cto.com/images/blog/202312/21021651_65832f939a76881239.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
- 五、BeanShell断言
- 1.常见的脚本
- 2.示例
断言
断言:验证接口返回内柔和预期是否一致,相当于功能测试中的【预期结果】和【实际结果】是否一致。
1、常见的断言有:
- 响应断言
- JSON断言
- 大小断言
- 断言持续时间
- BeanShell断言
2、Jmeter中添加断言的方式:
示例:以“登录”为例.以下为登录返回的实际结果(察看结果树),断言判断内容的预期结果来源。
{
"msg": "成功",
"code": 2000,
"data": {
"access_token": "eyJhbGciOiJIUzI1NiIsInR5",
"refresh_token": "eyJhbGciOiJIUzI1Ni",
"scope": "all",
"token_type": "bearer",
"expires_in": 7199,
"jti": "6MGQN0L1yLhwnRFAm6RES2e-OyY"
}
}
一、响应断言
1.响应断言
- Apply to---->Main sample only
响应断言的应用范围------>只作用于于父节点,即当前请求,建议一般选这个(一个请求对应一个或多个断言)。 - 测试字段---->响应文本
- 模式匹配规则----->包括
- 测试模式----->预期察看结果树返回体应该包括的内容
- 自定义失败消息----->随意编写或不写
2.示例
二、JSON断言
1.JSON断言
- Assert Json path exists:
json提取表达式---->在查看结果数中JSON Path Tester,测试能不能正常取值($.msg)
表达式否正确可以在察看结果树中验证 - Addi tionally assert value
可填写断言内容,----->Expected Value期望值
2.示例
1、JSON断言–单个值
2、JSON断言–多个值
3、JSON断言----第一个值
json断言表达式提取学习地址:https://goessner.net/articles/JsonPath/
三、大小断言
四、断言持续时间
五、BeanShell断言
jmeter常用的脚本断言
1.常见的脚本
1、响应状态码验证
//log输出日志信息
log.info("响应状态码:"+ResponseCode);
//响应状态码验证
if(ResponseCode.equals("200")){
Failure=false;
}
else{
Failure=true;
FailureMessage="响应状态码非200";
}
2、响应内容验证
String response=prev.getResponseDataAsString();
//log输出日志信息
log.info("响应体:"+response);
//响应体内容验证
if(response.contains("成功")){
Failure=false; //断言成功
}
else{
Failure=true; //断言失败
FailureMessage="响应体中不包含【成功】二字";
}
2.示例