持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第30天,点击查看活动详情
前面几节讲解了下jmeter有关get请求和post请求,其中post请求有几种请求格式。请求后,需要查看结果是否执行成功需要添加监听,但是一个接口请求是否成功,还是需要添加相应的断言的。
1、断言
断言时接口测试以及性能测试中国必不可少的一部分,断言帮我们自动判断请求的成功与否,Jmeter中支持多种格式的断言,可以在断言元件中添加。
1.1相应断言
相应断言是对请求,相应数据(包含请求头,响应头数据)进行的一种基本断言,添加方法为在线程组上点击右键,选择断言,选择相应断言即可,如下图所示。
相应断言-包含指定文本:
如上图,要断言响应体数据中包含指定文本,可以在相应断言中选择相应文本,选择包含,填写要包含的文本,如“登录成功”,并可以自定义该条断言失败时的消息内容。
响应文本的断言支持使用正则表达式匹配,如下图所示。
响应断言-正则表达式:
如上图,选择相应文本,选择匹配,填写相应文本应匹配的正则表达式即可。
1.2 JSON相应断言
对于JSON格式的响应,可以使用JSON断言,断言其中指定的字段的值符合预期,添加方法为,左键点击线程组,点击断言,选择JSON断言即可。
Jmeter中JSON断言中使用JSONPath原发来提取相应的指定字段。我们可以首先利用结果树元件来验证我们的JSONPath语法是否能提取到对应的字段,如下图所示。
发送完请求,在结果树中选择JSON Path Tester,在JSON Path Expression中输入JSONPath表达式,如“”代表JSON响应的根节点。使用“.”取下级节点,如果是Arrary数组,可以使用“[N]”来取第N项数据。
点击Test按钮验证能获取到指定的数据后。在JMeter中对应的请求下添加JSON断言,输入JSONPath表达式。勾选Additionally assert value,输入Expected Value期望结果即可,如下图所示。
注意如果不勾选Additionally assert value则只要能根据该JSONPath表达式匹配出有值即视为通过。勾选后可以断言JSONPath表达式对应字段的值。
如果要对多个字段进行断言,要添加多个JSON断言研究。
点击发送请求,即可在结果树中查看请求通过与否。