JMeter笔记:响应断言/Json断言/BeanShell断言

Jmeter中支持很多种格式的断言,下面举例记录下几种常用断言的用法。

本次测试接口的期望返回参数如下:

{
    "code":"53012463",
    "success":false,
    "message":"测试成功",
    "data":null
}

 

一、响应断言

响应断言模式匹配规则:

  • 包括(Contains):如果响应中包含了指定的字符串,判断为成功,支持正则表达式匹配
  • 匹配(Matches):如果响应完全匹配指定的字符串,判断为成功,支持正则表达式相等
  • 相等(Equals):如果响应完全匹配指定的字符串,判断为成功,不支持正则表达式子字符串
  • 字符串(Substring):如果响应中包含了指定的字符串,判断为成功,不支持正则表达式

响应断言的匹配规则都比较简单,下面图片中的例子是用的“字符串匹配”。

 

 

二、Json断言

下图中的例子只勾选了Additionally assert value,意思是$.code的值与我填入的值一致才能断言通过。如果要使用正则断言的话需要勾选Match as regular expression。这个地方设置断言的时候需要注意下。

 json路径表达式 $.code 代表json中的code字段值, $.code取出来的值是“53012463”

JsonPath详细用法:https://github.com/json-path/JsonPath

 

三、BeanShell断言

下面的简单例子是直接在beanshell面板上写脚本来判断的,判断接口响应数据中是否包含我们期望的code值。

BeanShell脚本定义了下列变量:
Read/Write: Failure, FailureMessage, SampleResult, vars, props, log.
ReadOnly: Response[Data|Code|Message|Headers], RequestHeaders, SampleLabel, SamplerData, ctx

 

 

以上三种断言方法基本可以满足平时工作需要了,以后用到其他的断言方式再补充~

posted @ 2022-02-26 17:54  阳光倾林  阅读(1372)  评论(0编辑  收藏  举报