jmeter断言
简介
断言(Assertions)可以用来判断请求响应的结果是否如用户所期望的。它可以用来隔离问题域,即在确保功能正确的前提下执行压力测试。这个限制对于有效的测试是非常有用的。
操作
首先创建一个响应断言
对响应报文中所有信息都可以进行断言,包括响应的文本、响应代码、响应头等。
参数:
APPly to(适用范围):
- Main sample and sub-samples:作用于父节点取样器及对应子节点取样器
- Main sample only:只作用于父节点取样器(一般的断言都选这个)
- Sub-samples only:只作用于子节点取样器
- JMeter Variable:只作用于jmeter变量(可写入正则提取的响应值)
测试字段:
- 响应文本:请求的响应文本信息,不包含响应头信息。最常用的断言字段。
- 文档(文本):通过Apache Tika从各种的文档中提取的文本进行验证,包括响应文本,pdf、word等等各种格式。
- 响应代码:对应http返回的响应码。
- 响应头:响应头信息
- URL样本: 请求url,如果有重定向包含重定向url
- 响应信息:匹配响应信息,如:OK
- 忽略状态(Ignore Status): 一个请求多项响应断言时,忽略某一项断言的响应结果,而继续下一项断言。
模式匹配规则
- 包括:响应的结果中包含指定的文本或者字段值,支持正则表达式
- 匹配:完全匹配,期望值与实际结果必须完全一致,一般结合正则表达式使用
- 相等:响应结果与指定的内容完全一致,不支持正则表达式
- 字符串:返回结果,包含指定的字符串,不支持正则表达式
- 否:不进行匹配
操作
Apply to:般不做选择,默认就行。
测试字段:这次我们测试响应文本
测试规则:选择包括
测试模式:点击下方添加,输入需要匹配的数据
以下为http请求输入的参数:
下图为响应断言输入的参数:
测试结果
失败案例:
我们可以看到,如果匹配不成功,则会报错,但响应数据都是正常的