性能测试全栈笔记:8.Jmeter接口响应断言

作者: admin 分类: 性能专题 发布时间: 2021-11-16 16:58

性能测试全栈笔记

八、Jmeter接口响应断言

断言相当于功能测试里的预期结果,通过断言的方式去判断响应是否与预期相符

常用响应断言分为四种:包括、匹配、相等、字符串

其中,包括、匹配支持正则表达式,相等、字符串不支持正则表达式

举例:

  • 协议:HTTP
  • IP:192.168.25.152
  • 端口:8080
接口名称接口方式路径入参(参数)
普通的GET类型接口get/pinter/com/getSku?id=1id=1

先看一下单接口运行状态,需要用到察看结果数:

假设,要判断”skuId”:1,”skuName”断言?

添加响应断言,路径:请求右键->添加->响应断言:

选择包括,添加:”skuId”:1,”skuName”

察看结果数:

结果是正确的

包括支持正则表达式,我们尝试用正则表达式去做,即”skuId”:(.+?),”skuName”:

再次察看结果数:

结果正确,也可以用”skuId”:.+,”skuName”表示,其中.+为第二个万能正则表达式,比第一种还万能,大家只需记忆第二种即可。包括介绍完毕,下面介绍字符串:

填写响应断言,勾选字符串规则,填写:”code”:”0″

察看结果数正确:

修改断言,让断言出错:”code”:”0″改为:”code”:”1″

察看结果数:

断言失败了,失败信息:不能接受”code”:”1″的结果,白话:我们设定的是”code”:”1″,但是响应结果里没有(结果里是”code”:”0″),故断言失败,断言对于后期脚本编写是很重要的,特别是响应断言、JSON断言

总结一下响应断言里包括、匹配、相等、字符串的含义:

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

下一章介绍JSON断言,同样也是重点。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表回复