JMeter监听器说明

JMeter的监听器可以理解为JMeter提供的测试分析工具(或者测试结果报告)。JMeter监听器的监听范围是当前节点及其子节点。JMeter提供了多种测试监听器,这里简单说几个用过的监听器。

创建测试计划

为了演示监视器的作用,我这里做了一个简单的HTTP请求测试。

如何创建测试计划就不多说了,可以参看这篇文章:《使用JMeter

下图是线程组的配置:

thread group

下图是HTTP请求的配置参数:

http param

启动测试,很快就可以生成测试结果报告。

用表格查看结果

下图是表格结果:

table listener

还有几个重要的指数:

important param

简单说下表格中的字段:

  • Sample#——每个请求的ID;
  • StartTime——每个请求启动时间;
  • SampleTime——响应每个请求的时间(以毫秒为单位);
  • Status——请求状态,如果为勾则表示成功,如果为叉表示失败;
  • Bytes——请求的字节数;
  • Latency——延迟时间;
  • ConnectTime——请求连接用时。

几个指数:

  • 样本数目——样本总数(线程数*循环次数),或者说是发送给测试应用的请求总数;
  • 最新样本——服务器响应最后一个请求的时间;
  • 平均——请求响应时间的平均值;
  • 偏离——请求响应时间的标准差。

聚合报告

下图是本次测试的聚合报告:

concrete report

  • 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:

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数据的平均值(服务端返回所有数据/请求数)。

图形结果

本次测试的图形结果如下图:

img report

这里的几个指数上面都有提到。还是再说一次吧:

  • 样本数目——样本总数(线程数*循环次数),或者说是发送给测试应用的请求总数;
  • 最新样本——服务器响应最后一个请求的时间;
  • 平均——请求响应时间的平均值;
  • 偏离——请求响应时间的标准差;
  • 吞吐量——每秒/每分钟(具体看“/”后面的单位)处理的请求数;
  • 中值——请求响应时间中值,即50%的请求响应时间都小于该值。

查看结果树

下图是查看结果树:

result tree

简单说几个概念:

  • 取样器结果——显示的是请求样本相关参数(客户端参数与响应参数)
  • 请求——发送请求的具体值
  • 响应数据——服务端返回的相应参数

ALL!

参考文章


发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据