1.主流的性能测试工具对比
loadrunner 模拟用户多,分析报表精确(秒),支持ip欺骗功能,收费,体积大,不能扩展
jmeter 用户少,分析较差(分钟),不支持ip欺骗功能,收费,体积小,可以扩展
2.配置jmeter环境变量
首先配置java环境变量(已配置)
新建JMETER_HOME---填写路径
填写classpath
;%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;
%JMETER_HOME%\lib\jorphan.jar
填写path
%JMETER_HOME%\bin
2.jmeter各组件讲解
线程组:线程组就是控制jmeter用于执行测试的一组用户
HTTP请求:作用:向服务器发送HTTP和HTTPS请求
监听器:监听器可以动态的监控JMeter测试执行的过程,实时查看测试结果
察看结果树
通过察看结果树,我们可以看到每个请求的结果,其中红色的是出错的请求,绿色的为通过
Thread Name:线程组名称
Sample Start: 启动开始时间
Load time:加载时长
Latency:等待时长
Size in bytes:发送的数据总大小
Headers size in bytes:发送数据的其余部分大小
Sample Count:发送统计
Error Count:交互错误统计
Response code:返回码
Response message:返回信息
Response headers:返回的头部信息
聚合报告
lable:对应每一个http请求,显示的是http请求的Name,如百度http请求name为baidu
#Samples:表示这一次的测试中一共发出了多少请求,如上图所示,sougou和baidu的http请求
每个都发出30个请求
Average:平均响应时间,指的是所有的请求的平均响应时间,如上图的30个请求的总的响应时间
除以30得出的平均响应时间,默认的情况下是单个请求的平均响应时间,但当使用了“事务控制器”
时,则以事物为单位显示平均响应时间
Median:中位数,也就是50%用户的响应时间
90%Line:90%用户的响应时间
Min:最小响应时间
Max:最大的响应时间
Error%:本次测试中出现错误的请求的数量/请求的总数,如上图所示,本次的测试中,sougou的
http请求66.6%的请求出错,而baidu的请求则没有出错的请求
Throughput:吞吐量,默认情况下表示每秒完成的请求数,如上图所示,每秒完成的请求数分别
为6.6个每秒,6.2个每秒
Recived KB/Sec:每秒从服务器端接收到的数据量,以kb为计算的单位
3.jmeter的参数化
常见的几种参数化方式
用户定义的变量, 用户参数, CSV Data Set Config ,函数
用户定义变量:通过${变量名}进行引用
用户参数:针对同一组参数,当不同的用户来访问时,可以获取到不同的值
csv数据文件的设置
让不同的用户在多次循环时,可以取到不同的值
函数参数化
counter函数,CsvRead函数
4.jmeter断言
响应断言,json断言,Xpath断言
响应断言
json断言
Xpath断言
时间断言
5.jemter实现关联
正则表达式提取
json提取
xpath提取
正则表达式:就是一个公式,或者是一套规则,使用这套规则可以从任意字符串中提取想要的数据内容
.:是通配符,可以代表任意字符(除换行回车)
*:代表前面的字符出现0或者多次
.贪婪匹配
.?非贪婪
版权归原作者 xbxbgk 所有, 如有侵权,请联系我们删除。