Jmeter接口测试断言

断言:让程序判断预期结果和实际结果是否一致

提示:JMeter断言是在请求的返回层面增加一层判断机制:因为请求成功了,并不代表结果一定正确,因此需要检测机制提高测试准确性

Jmeter最常用断言:Response Assertion(响应断言),Json断言,beanshell断言

一、Response Assertion(响应断言)

响应断言可以选择断言验证的范围(URL,响应头,响应码,响应体,响应附件),匹配的模式(纯文本还是正则表达式匹配)

操作响应断言:添加->断言->响应断言

响应断言具体如下:

图片

Apply to (响应断言的应用范围)

Main sample and sub-samples:作用于父节点取样器及对应子节点取样器
Main sample only:只作用于父节点取样器(一般的断言都选这个)
Sub-samples only:只作用于子节点取样器
JMeter Variable:只作用于jmeter变量(可写入正则提取的响应值)

要测试的响应字段(可通过取样器结果查看)

  1. 响应文本:请求的响应文本信息,不包含响应头信息。最常用的断言字段

  2. Document(text):通过Apache Tika从各种的文档中提取的文本进行验证,包括响应文本,pdf、word等等各种格式

  3. Response Headers:响应头信息

  4. URL样本:请求url,如果有重定向包含重定向url

  5. 响应代码:对应http返回的响应码 

  6. 响应信息:匹配响应信息

  7. Ignore Status:一个请求多项响应断言时,忽略某一项断言的响应结果,而继续下一项断言

图片

响应断言:模式匹配

  1. 包括:响应的结果中包含指定的文本或者字段值,支持正则表达式

  2. 匹配:完全匹配,期望值与实际结果必须完全一致,一般结合正则表达式使用

  3. Equals:响应结果与指定的内容完全一致,不支持正则表达式

  4. SubString:返回结果,包含指定的字符串,不支持正则表达式 

  5. 否:不进行匹配

图片

二、Json断言

JSON断言有两种使用模式:
根据JSONPath能否在JSON文档中找到路径;
根据JSONPath提取值并对值进行验证。
若文档格式为非JSON则断言失败;找不到路径断言失败;提取值与预期值不一致断言失败。

Json断言是针对Json报文的断言方式,通Json Path提取出Json响应报文中的字段,再采用纯文本或者正则去验证Json Path的提取结果,Json结合了Json Path和正则表达式,有如下选项:

  1. Additionally assert value:文本验证,此处是完全匹配,勾选上此选项后再勾选Match as regular expression,可以触发正则匹配。

  2. Match as regular expression:支持正则表达式匹配

  3. Expect null:判定返回为null

  4. Invert assertion:倒置断言结果

图片

Json Path是用于确定 JSON 文档中某部分元素位置的语言。它将 JSON 数据转换为 DOM 树状结构,并提供在数据结构中寻找节点的能力。Jmeter提供组件来验证Json Path的语法正确性,以及元素匹配情况。

可以在察看结果树中将响应报文的格式从Text切换为Json Path Tester,并在Json Path Expression栏中输入相应的Json Path ,点击Test,察看JsonPath的定位结果。

图片

响应断言和Json断言可以涵盖大部分的接口校验需求,针对更加复杂的接口校验需求。

比如数据库校验,比如复杂计算逻辑的校验 ,可通过Beanshell断言组件编写脚本来实现断言。

学习资料/接口/项目等需要领取:需要+\/ →it7411

最新软件测试+进阶测试全套【自学资料包】

  • 19
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沈伟-GodGreat

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值