JMeter的监听器可以理解为JMeter提供的测试分析工具(或者测试结果报告)。JMeter监听器的监听范围是当前节点及其子节点。JMeter提供了多种测试监听器,这里简单说几个用过的监听器。
创建测试计划
为了演示监视器的作用,我这里做了一个简单的HTTP请求测试。
如何创建测试计划就不多说了,可以参看这篇文章:《使用JMeter》
下图是线程组的配置:
下图是HTTP请求的配置参数:
启动测试,很快就可以生成测试结果报告。
用表格查看结果
下图是表格结果:
还有几个重要的指数:
简单说下表格中的字段:
- Sample#——每个请求的ID;
- StartTime——每个请求启动时间;
- SampleTime——响应每个请求的时间(以毫秒为单位);
- Status——请求状态,如果为勾则表示成功,如果为叉表示失败;
- Bytes——请求的字节数;
- Latency——延迟时间;
- ConnectTime——请求连接用时。
几个指数:
- 样本数目——样本总数(线程数*循环次数),或者说是发送给测试应用的请求总数;
- 最新样本——服务器响应最后一个请求的时间;
- 平均——请求响应时间的平均值;
- 偏离——请求响应时间的标准差。
聚合报告
下图是本次测试的聚合报告:
- Label——取样器名称;
- Samples——发给被测试应用的请求总数;
- Average——请求响应时间的平均值;
- Median——请求响应时间中值,即50%的请求响应时间都小于该值(一个统计学的概念);
- 90%Line——请求响应时间90%线,即90%的请求响应时间都小于该值;
- Min——最小响应时间;
- Max——最大响应时间;
- Error%——出错率(出错的请求数/所有的请求数);
- Throughput——吞吐量,每秒/每分钟(具体看“/”后面的单位)处理的请求数;
- KB/sec——每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec;
【注意】总体值并不是各列对应记录的累加。是以所有Samples为样本的统计值,如:总体Min=min{各个Samples的Min},总体Max=max{各个Samples的Max}。
Summary Report(总结报告)
下图是本次测试的Summary Report:
觉得这个和聚合报告一起看有点意思。
- Label——取样器名称;
- Samples——发给被测试应用的请求总数;
- Average——请求响应时间的平均值;
- Median——请求响应时间中值,即50%的请求响应时间都小于该值(一个统计学的概念);
- 90%Line——请求响应时间90%线,即90%的请求响应时间都小于该值;
- Min:最小响应时间;
- Max:最大响应时间;
- Std.Dev——所有请求响应时间的标准差,即是“用表格查看结果”中的偏离;
- Error%——出错率(出错的请求数/所有的请求数);
- Throughput——吞吐量,每秒/每分钟(具体看“/”后面的单位)处理的请求数;
- KB/sec——每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec;
- Avg.Bytes——服务端返回给Request数据的平均值(服务端返回所有数据/请求数)。
图形结果
本次测试的图形结果如下图:
这里的几个指数上面都有提到。还是再说一次吧:
- 样本数目——样本总数(线程数*循环次数),或者说是发送给测试应用的请求总数;
- 最新样本——服务器响应最后一个请求的时间;
- 平均——请求响应时间的平均值;
- 偏离——请求响应时间的标准差;
- 吞吐量——每秒/每分钟(具体看“/”后面的单位)处理的请求数;
- 中值——请求响应时间中值,即50%的请求响应时间都小于该值。
查看结果树
下图是查看结果树:
简单说几个概念:
- 取样器结果——显示的是请求样本相关参数(客户端参数与响应参数)
- 请求——发送请求的具体值
- 响应数据——服务端返回的相应参数
ALL!
参考文章
发表评论