侧边栏壁纸
博主头像
一朵云的博客博主等级

拥抱生活,向阳而生。

  • 累计撰写 67 篇文章
  • 累计创建 25 个标签
  • 累计收到 7 条评论

目 录CONTENT

文章目录

JMeter -- 断言

一朵云
2022-02-07 / 0 评论 / 1 点赞 / 7872 阅读 / 4034 字

应用场景:

  当接口并发请求多时,要查询结果树中那么多的响应结果是否符合预期,是比较繁琐且容易出错的,所以JMeter提供了断言组件来帮我们处理这种情况。

基本介绍:

  断言组件是通过获取服务器响应数据,然后根据断言规则去匹配的。假设断言中配置的内容和响应数据匹配成功,属于正常情况,此时我们看不到任何提示;建设断言中配置的内容和响应数据匹配不到,那就是出现了异常情况,此时JMeter会判定这个事务失败了,结果树中的异常请求名会 标红 展示。

一、响应断言(Response Assertion)

如其名,响应断言就是对服务器的响应数据进行规则匹配的。

image.png

主要参数说明如下:

1、Apply to

应用范围,有以下四个选项:

  • Main sample and sub-sample:匹配范围包括 main sample(父取样器)和sub-sample(子取样器)

  • Main sample only:只匹配 main sample

  • Sub-samples only:只匹配 sub-sample

  • JMeter Variable:支持对JMeter变量值进行匹配

2、测试字段

包括以下九个选项:

  • 响应文本:响应服务器返回的文本内容

  • 响应代码:匹配响应代码(指的是http请求的响应代码,即JMeter取样器结果中的 Response code ,而不是接口返回内容中自定义的响应代码。)

  • 响应信息:匹配响应信息(指的是http请求的响应信息,即JMeter取样器结果中的 Response message ,而不是接口返回内容中自定义的响应信息。)

  • Response Header:匹配响应中的头信息

  • Resquest Header:请求中的头信息

  • URL样本:匹配URL链接

  • Document(text):对响应数据的文档内容进行匹配

  • 忽略状态(Ignore Status):当第一个断言失败时可以忽略

  • Request Data:请求数据

3、模式匹配规则

包括以下五个选项:

  • 包括:响应内容包括需要匹配的内容即代表响应成功,支持正则表达式。

  • 匹配:响应内容要完全匹配需要匹配的内容即代表响应成功,大小写不敏感,支持正则表达式。

  • 相等(Equals):响应内容要完全等于需要匹配的内容才代表响应成功,大小写敏感,匹配内容是字符串非正则表达式。

  • 字符串(Substring):响应内容包含需要匹配的内容才代表响应成功,大小写敏感,匹配内容是字符串非正则表达式。

  • 否:选择Equals与Substring时匹配的是字符串,大小写敏感,有时会响应失败,此时可以选择此项,会降低匹配级别,类似降到“包括”、“匹配”的级别,这样可以响应成功。

4、测试模式:

填入匹配的字符串或正则表达式,需与前面勾选的模式进行匹配。

实例展示:

场景1:

假设需进行10次接口请求,需要自动标记出接口返回文本中,状态码不等于200的请求。

设置十个并发请求:
image.png

断言中设置匹配code等于200:
image.png

响应结果中code不等于200的标红展示:
image.png

场景2:

假设需进行10次接口请求,需要自动标记出接口请求成功,但响应数据data字段 为空的请求。

断言中配置data为空取反:
image.png

不为空的结果:
image.png

data为空的结果:
image.png

1

评论区