一.Jmeter响应断言介绍
1.响应断言的作用
对所有格式的响应数据进行断言
2.响应断言的配置
该项是要检查的项(实际结果)
①测试字段
针对响应:
-响应文本:来自服务器的响应文本,即主体,不包括任何HTTP头
-响应代码:响应的状态码,例如:200
-响应信息:响应的信息,例如:OK
-Response Headers: 响应头部
-Request Headers:请求头部
-Request Data:请求数据
Document (text):响应的整个文档
忽略状态:忽略返回的响应状态码
针对请求:
-URL样本:请求URL
②模式匹配规则
包括:文本包含指定的正则表达式
匹配:整个文本匹配指定的正则表达式
相等:整个返回结果的文本等于指定的字符串(区分大小写)
字符串:返回结果的文本包含指定字符串(区分大小写)
否:取反
或者:如果存在多个测试模式,勾选代表逻辑或(只要有一个模式匹配,则断言就是OK),不勾选代表逻辑与(所有都必须匹配,断言才是OK)
③测试模式
填写预期结果(可填写多个),按钮【添加】、【删除】是进行指定内容的管理
④自定义失败消息
填写如果请求失败返回你自定义的失败消息
二.使用响应断言-以访问百度请求为例
1.操作步骤
①.添加线程组
②.添加HTTP请求
③.添加响应断言
选择测试字段-响应文本
勾选匹配模式-字符串
填写测试模式字段-百度一下,你就知道(Tips:百度一下,你就知道中的逗号为中文状态下的逗号)
④.添加查看结果树
⑤.运行
结果数出现报错提示
Assertion error:false
Assertion failure:true
Assertion failure message:Test failed: text expected to contain/百度一下,你就知道/
断言错误:错误
断言失败:真
断言失败消息:测试失败:预期包含的文本/百度一下,你就知道/
问题:为何我们正确配置了http请求以及响应断言,为何还是请求失败???
原因是输入编码格式错误,解决方法如下
三.Jmeter无法使用断言解决方法---修改默认编码
1.打开jmeter文件所在位置
①桌面jmeter图标----右击---打开文件所在位置----进入到bin目录中----找到jmeter.properties----打开文件
②找到sampleresult.default.encoding=ISO-8859-1,大约在1099行上下
③在下面一行添加sampleresult.default.encoding=UTF-8如下图所示:(注意:该行代码不要在注释状态下)
④保存文档,重启Jmeter
⑤重新进行访问百度,响应断言的操作,这下就请求断言成功啦~(Tips:断言成功是没有成功字段提示的,只有失败时会报错)
四.Jmeter设置成永久汉化
1.也是找到jmeter.properties文件打开
①找到#language=en,大约在39行上下
②在下面一行添加language=ch_CN(注意:该行代码不要在注释状态下)
③保存文档,重启Jmeter
这样每次打开都是中文了~~~~~~
版权归原作者 李維 所有, 如有侵权,请联系我们删除。