1.说明
一个HTTP请求发出去,怎么判断执行的任务是否成功呢?通过检查服务器响应数据,是否返回预期想要的数据,如果是,判断任务成功,反之任务失败。
作用:判断请求是否成功
2.步骤
第一步:添加 “响应断言”
HTTP请求 (鼠标右键)---->添加---->断言---->响应断言
(1)Apply to(应用范围):大多数勾选“main sample only” 就足够了,因为我们一个请求,实质上只有一个请求。但是当我们发一个请求时,可以触发多个服务器请求,类似于ajax那种,那么就有main sample and sub-sample之分了。此外,对于有重定向的请求,并且勾选了“跟随重定向”, 那么这两个请求都是 sub-sample,重定向后的请求(第二个请求)就是main-sample。
(2)要测试的响应字段:
响应文本: 服务器响应文本,一般普通http响应,都勾选这个。
响应代码:http响应代码,如101,200,302,404,501等。但当我们要验证404,501等http响应代码时,需要勾选“ ignore status”。因为当http 响应代码为400,500时,jmeter默认这个请求时失败的。
响应信息:http响应代码对应的响应信息,例如:OK, Found
Response Headers:http中的响应头
Request Headers:http中的请求头
url样本:是对sample的url进行断言。如果请求没有重定向(302),那么就是这个就是请求url。 如果有重定向(且跟随重定向),那么url就包含请求url 和 重定向url
Document(Text):一切Apache Tika 支持服务器响应,包括文本响应,还支持 PDF, Office, Audio, Video formats。所以一般普通http请求,不要选择这个。
Ignore status :忽略状态
(3)模式匹配规则:包括(返回信息中没有“要测试的模式”中的信息时,为请求失败;返回信息中包含“要测试的模式”中的信息时,为请求成功)
(4)要测试的模式:即需要校验的数据值。
注意:查看结果要用text文本查看,json虽然方便,但是不能匹配响应结果
第二步:断言结果
HTTP请求 (鼠标右键)---->添加---->监听器---->断言结果
对服务器的响应进行断言校验,不需要配置,运行完后可查看结果