i3geek.com
闫庚哲的个人博客

JMeter学习(三)——数据深度分析

聚合报告

通过添加监听器中的聚合报告,我们可以方便的统计出一次测试的相关指标,如下图

 

  • Average:平均响应时间(毫秒ms)
  • Median:中值时间,N个数据从小到大排列,第N/2个数
  • 9x%Line:N个数据从小到大排列,第9x%N个数。所有数据中9x%的响应时间都小于9x。具体下面详解
  • Min:最短响应时间
  • Max:最长响应时间
  • Error:出错的百分率
  • Throughput:吞吐率(请求数/秒)
  • KB/sec:接收速率(千字节/秒)

90%Line的含义

90% Line (90 th Percentile) is the value below which 90% of the samples fall. The remaining samples too at least as long as the value. This is a standard statistical measure. See, for example: Percentile entry at Wikipedia.

——摘自官网

我的理解是,数据按由小到大的顺序排列后,取出第90%位。比如:2、5、1、5、3、8、0、2、1、9中,90%line就是8。

1. 按照升序进行排列 0、1、1、2、2、3、5、5、8、9
2. 10个数字,第90%位就是10*90%,第9位
3. 第9位是8,所以90%line就是8

看似很简单的定义,但是它究竟有什么意义呢?当一组数升序排列好后,选出第90%位,那就意味着前90%个数字都小于等于它,也就代表着改组数据中有90%的数小于等于该数字。同理99%line就代表该组数据中有99%的数字小于等于该值。

用在性能测试上,将显得十分的有意义。比如在响应时间中,代表着一组请求中,90%请求响应不会超过该指。可以有效的进行性能评估。

吞吐率(thoughput)

说到吞吐率就不得不先介绍吞吐量。

吞吐量指在一次性能测试中,网络上传输的数据量的总和。

用来反映服务器所能承受的压力,在测试中是一个重点的关注指标。但是只用吞吐量来衡量系统的性能是极其不准确的,比如,一个水龙头一天一夜流出1吨水;十个水龙头一秒流出1千克水。相比之下,一个水龙头的吞吐量是1000千克,十个水龙头的吞吐量是1千克。所以只看总量是不行的,还要看消耗的时间。

因此将吞吐量除以时间,所得到的单位时间内的数据量就是吞吐率。

在业务角度上来说,吞吐量不一定只能代表数据量,也可以用请求数、业务数、访问量等来衡量。比如在Jmeter中,吞吐率是请求数/秒

吞吐率代表着单位时间内所能承受的压力,是测试中一个重要的指标,通过比较吞吐量,可以发现系统的运行状态。当随着并发数增加时,吞吐率是不断增加的,当达到一个服务器极限后,再增加并发数,吞吐率会急速下降,直至服务器崩溃。所以当达到临界点(吞吐量最高点,负载和处理均衡时)为**最大吞吐率**,是系统在运行下的一个理想阈值范围。

jtl文件的分析

除了通过jmeter系统自带的监听器外,也可以通过命令符运行生成jtl数据文件。该文件是csv格式,可以通过excel或者txt打开。

设置jtl格式

通过点击任何一个监听器的configure按钮都可以弹出设置界面,进行设置。如下图,勾选所需的内容,点击Done即可保存。(在此笔者不一一为大家解释了)

 

jtl各项属性

jtl是jmeter采集的原始数据,包括:

timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,Latency

请求发出的绝对时间,响应时间,请求的标签,返回码,返回消息,请求所属的线程,数据类型,是否成功,失败信息,字节,响应时间

不包括聚合报告的内容!聚合报告的内容无法输出,只能通过原始数据进行二次分析计算。

其中聚合报告中部分值的计算方法如下:

  1. 1. 吞吐量=完成的请求数/完成这些请求数所需要的时间;
  2. 2. 平均响应时间=所有响应时间的总和/完成的请求数;
  3. 3. 失败率=失败的个数/总数数;
  4. 4. 时间的计算方法是:通过timeStamp时间戳(发出的起始时间)相减而得
赞(2)
未经允许不得转载:爱上极客 » JMeter学习(三)——数据深度分析
分享到: 更多 (0)

评论 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    学习了一下,

    themebetter3年前 (2016-03-19)回复