2 JMeter
2.5 JMeter断言
作用:让脚本自动化执行的过程中,能够自动的判断执行结果是否正确,需要添加断言
- 响应断言
- JSON断言
- 持续时间断言(Duration Assertion)
2.5.1 响应断言
添加方式:测试计划->线程组->HTTP请求->(右键添加)断言->响应断言
场景样例:
请求:
https://www.baidu.com
检查:让程序检查响应数据中是否包含"百度一下,你就知道"
操作步骤:
1.添加线程组
2.添加HTTP请求
3.添加响应断言
4.添加断言结果
5.添加查看结果树
配置:
- 测试字段:需要检查的字段
- 模式匹配规则:需要使用什么规则来进行检查
- 且、或者、非
- 测试模式:需要校验的值
- 填写多个值
2.5.2 JSON断言
适用于返回的HTTP响应为JSON格式
添加:线程组–HTTP请求–断言–JSON断言
场景样例:
请求:
http://www.weather.com.cn/data/sk/101010100.html
检查:让程序检查响应的JSON数据中,city对应的内容是否为“北京”
操作步骤
1.添加线程组
2.添加HTTP请求
3.添加JSON断言
4.添加断言结果
5.添加查看结果树
配置:
- JSON PATH: $weatherinfo.city
- 勾选“Additonal assert value”
- 在expected value 里填写期望值
当期望值没有时
2.5.3 断言持续时间
适用于性能测试时候,检查HTTP请求的响应时间是否超过预期值
添加:线程组–HTTP请求–断言–断言持续时间
场景样例:
请求:
https://www.jd.com
检查:让程序检查响应时间是否大于500毫秒
操作步骤
1.添加线程组
2.添加HTTP请求
3.添加断言持续时间
4.添加断言结果
5.添加查看结果树
配置:预期时间
重复访问时间会少
当设置响应时间20毫秒
3 使用问题
3.1 jmeter响应中出现乱码时
如果响应数据中中文显示乱码可以修改 \bin jmeter.properties配置文件
#sampleresult.default.encoding=ISO-8859-1
改为
sampleresult.default.encoding=UTF-8 重启jmeter