【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。

转自:https://www.cnblogs.com/dinghanhua/p/9823627.html

1 在请求上右键添加json断言

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第1张图片

2 编辑json Assertion

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第2张图片
A.Additionally assert value:添加验证的值,只有勾选了此复选框,才可以在Expected Value中设置期望的值。
B.Match as regular expression:匹配正则表达式,在期望的值中填写正则表达式,如果不勾选此项,在Expected Value中设置了正则表达式,则不进行匹配。
C.Expect null:期望值为null,如果期望的值为null,可以勾选此项。
D.Invert assertion(如果匹配的值存在,则断言失败,不匹配,则断言成功)。

判断方式:

如果响应结果不是json格式的,fail

如果json path找不到元素,fail

如果json path找到元素,没有设置条件,pass

如果json path找到元素了,不符合条件,fail

如果json path找到元素,且符合条件,pass

如果json path返回的是一个数组,迭代判断是否有元素符合条件,有则pass,无则fail

第一种 值匹配

值匹配成功示例:
【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第3张图片

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第4张图片

值匹配失败示例:

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第5张图片
在这里插入图片描述

第二种 正则匹配

正则匹配成功示例:
【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第6张图片

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第7张图片

正则匹配失败示例:

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第8张图片

断言fail,提示预期和实际结果不相符

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第9张图片

第三种 预期为null

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第10张图片
在这里插入图片描述

第四种 反转,上面的不符合pass,上面的有符合的fail

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第11张图片

断言提示有点怪怪的。 感觉 failed that jsonpath $[0].TT matches 20181019 更好吧。因为匹配所以fail。

【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第12张图片

==========
示例:
【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第13张图片
json串:
【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第14张图片
1.取pageNo值: $.data.pageNo

2.取第一个id值:$.data.list[0].id

3.取第2个id值:$.data.list[1].id

4.匹配1213和1214两个值,
【jmeter】断言,当响应结果是json格式时,用JSON Assertion更方便判断。_第15张图片

你可能感兴趣的:(jmeter)