文章目录
- 一、响应断言(Response Assertion)
- 操作步骤
- 断言原则
- 查看断言结果
- 二、JSON断言
- 操作步骤
- 断言原则
- 三、断言持续时间(Duration Assertion)
- 操作步骤
- 断言原则
- 四、数据包大小断言(Size Assertion)
- 操作步骤
- 断言原则
- 五、XPath断言(XPath Assertion)
参考地址:
一、响应断言(Response Assertion)
响应断言是最常用的一种断言方法,主要是对响应结果中的文本内容进行断言,比如响应结果是否包含指定的值,或者是否等于指定的值。响应断言可以适用各种返回类型的响应结果
,如Test、html、application/json、application/xml等。
操作步骤
第1步:添加线程组
第2步:添加HTTP请求
第3步:在HTTP请求下添加响应断言
第4步:添加断言结果、添加查看结果树
第5步:运行接口后,查看断言结果、查看结果树
Apply to: 指定断言作用范围。
Main sample and sub-sample:作用于主main sample和子sub-sample
Main sample only:只作用于main sample
Sub-samples only:只作用于sub-sample
JMeter Variable:作用于JMeter变量
要测试的响应字段:
响应文本(Text Response)
:从服务器返回的响应文本,比如body,包含HTTP头文档(文本)Document(text)
:通过Apache Tika追踪的各种各种类型文档的文本URL样本
响应代码(Response Code)
: 比如 200响应消息(Response Message)
: 比如 OK响应头(Response Headers )
:包括Set-Cookie 头,如果有的话忽略状态(Ignore Status)
:指示JMeter设置sampler status的初始状态为success。sample status是否成功,由Response status的断言结果决定,当选中Ignore Status时,Response status被强制设置为success,不执行进一步的断言判断。仅第一次断言时使用。
断言原则
如上图设置,如果响应结果中包含指定的字符串,则断言通过;如果不包含,则断言失败。
查看断言结果
二、JSON断言
JSON断言也是测试工作中经常用到的一种断言方法,它一般用于断言某个字段值是否等于我们指定的值。所以JSON断言只能针对响应结果为applicaton/json格式的进行断言操作
。如果是其他类型(如:Test、html),则无法使用这种方式。
操作步骤
第1步:添加线程组
第2步:添加HTTP请求
第3步:在HTTP请求下添加JSON断言
第4步:添加断言结果、添加查看结果树
第5步:运行接口后,查看断言结果、查看结果树
json表达式只有一个$
字符时,断言所有内容。
断言原则
如果响应结果中user_name节点的值与期望值相等,则断言通过;否则,断言失败。
三、断言持续时间(Duration Assertion)
断言持续时间通常用于做性能测试
,一般用于检查HTTP请求的响应时间是否超过预期值。而这个响应时间是性能测试中常关注的一个性能指标。
操作步骤
第1步:添加线程组
第2步:添加HTTP请求
第3步:在HTTP请求下添加断言持续时间
第4步:添加断言结果、添加查看结果树
第5步:运行接口后,查看断言结果、查看结果树
断言原则
期望的持续时间,如果实际请求时间小于等于这个值,则断言通过,否则断言失败。
四、数据包大小断言(Size Assertion)
判断响应结果是否包含正确数量的byte。可定义(=, !=, >, <, >=, <=)
操作步骤
第1步:添加线程组
第2步:添加HTTP请求
第3步:在HTTP请求下添加大小断言
第4步:添加断言结果、添加查看结果树
第5步:运行接口后,查看断言结果、查看结果树
断言原则
响应结果的字节大小满足设置的大小和比较类型时,则断言通过,否则断言失败。
五、XPath断言(XPath Assertion)
如果服务器响应返回的是 xml 格式的内容,这时最佳的断言验证类型就是使用 XPath Assertion。 XPath即为XML路径语言,他是一种用来确定XML文档中某部分位置的语言。XPath基于XML的树状结构,提供在数据结构树中寻找节点能力。
XML Parsing Options
Use Tidy(tolerant parser)
:使用 Tidy(容错解析器),默认选择Quite。Quiet:不显示;Report errors:报告异常;Show warnings:显示警告。Use Namespaces
:使用名称空间Validate XML
:验证 XML(文件包/数据)Ignore Whitespace
:忽略空格(允许你指定语法分析器可以忽略哪个空格,而哪个空格是重要的)Fetch external DTDs
:获取外部 DTDs(一些 XML 元素具有属性,属性包含应用程序使用的信息,属性仅在程序对元素进行读、写操作时,提供元素的额外信息,这时候需要在 DTDs中声明)
XPath Assertion
输入框中写入 xpath 断言,点击 Validate 验证其正确性