文章目录

  • 断言
  • 一、响应断言
  • 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中添加断言的方式:

jmeter python断言 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.示例

jmeter python断言 jmeter断言有几种_json_02

二、JSON断言

1.JSON断言

  • Assert Json path exists:
    json提取表达式---->在查看结果数中JSON Path Tester,测试能不能正常取值($.msg)
    表达式否正确可以在察看结果树中验证
  • jmeter python断言 jmeter断言有几种_json_03

  • Addi tionally assert value
    可填写断言内容,----->Expected Value期望值

2.示例

1、JSON断言–单个值

jmeter python断言 jmeter断言有几种_测试工具_04


2、JSON断言–多个值

jmeter python断言 jmeter断言有几种_JSON_05


3、JSON断言----第一个值

jmeter python断言 jmeter断言有几种_jmeter python断言_06


json断言表达式提取学习地址:https://goessner.net/articles/JsonPath/

三、大小断言

jmeter python断言 jmeter断言有几种_jmeter python断言_07

四、断言持续时间

jmeter python断言 jmeter断言有几种_运维_08

五、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.示例

jmeter python断言 jmeter断言有几种_jmeter python断言_09


jmeter python断言 jmeter断言有几种_jmeter python断言_10