目录
断言是啥呢?
就是判断接口实际返回值是否符合预期
那么jmeter如何搞断言呢?
添加后断言的页面展示
其中各字段的含义为:
Apply to:是应用范围,该断言配置的生效范围
- Main sample and sub-samples:匹配范围为当前父取样器,及子取样器
- Main sample only :仅当前父取样器
- Sub samples only:仅子取样器
- JMeter Variable:变量值进行匹配
测试字段:指要对那部分数据进行断言,就是要判断哪部分数据是否符合预期。
- 响应文本:响应服务器返回的文本内容,http协议排除header部分
- 响应代码:匹配响应代码,比如http请求中‘200’代表成功
- 响应信息:匹配响应信息,处理成功返回‘成功’或者“ok”字样
- Response Header:匹配响应头中的信息。这四种常用。
模式匹配规则:
- 包括:测试字段中包括需要匹配的内容就算成功
- 匹配:测试字段要完全匹配匹配内容,不区分大小写
- 相等:完全相等,区分大小写
- 字符串:测试字段包括匹配内容即为成功。
- 否:就相当于取反
如果查看断言结果呢?
举个例子🌰
一)断言为true的情况
1、正常的请求返回值是这样的:
{"st":0,"msg":"账号未登录","code":10008,"data":{},"page":0,"size":0,"total":0}
2、按照上述配置好断言以及断言结果。
3、执行该请求
断言结果显示如下:代表该case通过。断言返回为true
察看结果树显示如下:
一切正常
二)断言为false的情况
1、更改断言测试模式,也就是去返回值中找一个断言一个不存在的,使其返回false
断言中配置的测试模式由【账号】(响应中存在的)更改为【哈哈】(响应值中不存在的)
2、执行该case
如果存在自定义失败信息,断言结果显示自定义的断言信息
如果不存在自定义失败的信息,就显示如下内容。
3、察看结果树显示如下
将请求置红,并且返回响应断言的失败信息,还是老样子,如果存在自定义失败信息,断言结果显示自定义的断言信息,如果不存在自定义失败的信息,就显示默认。
注意:当测试模式中的存在多个要匹配的字段的时候,多个同时匹配成功,则断言成功,一个不符合断言则为false
以上。。。