Jmeter的聚合报告是一个非常nice的listener,接口测试以及性能测试方面都会用到这个nice的监听器。

  那么优秀在什么地方呢?上图

  

  日常工作中可能只关注这部分内容:

  

  可是这里边的指标真的都懂么?看了几篇知名大师的博客,都侧重谈了聚合报告这块的内容;当然,我在面试过程中,也经常有问在简历上写着“精通Jmeter”的面试者一些关于聚合报告方面的问题,遗憾,能回答上来的寥寥无几;或者说能答到重心的不多。可能本身这块的一个指标就存在一定的误区。

  虽说在一些博客、公众号文章,一些大师用单独篇幅来讲解,貌似“后浪”并没有那么在意。又或者有关聚合报告方面的指标确实是容易给大家带来一些误导。

  因此,我也着重来记一下聚合报告方面的内容。

  和往常一样,先贴官方文档(有人经常吐槽看不懂英文,是硬伤总归是硬伤,慢慢补,当下为解燃眉之急,谷歌翻译、有道翻译等便是良策!):

  

帮助文档中清清楚楚的将每个指标都进行了诠释,可能某些翻译的原因或者自我认知的原因,都导致了一些误解。一一来进行解读吧。

Label:通俗一点的翻译是标签。(该标签通常争议不大)

   【样品的标签。如果“在标签中包含组名?”然后,将线程组的名称作为前缀添加。这允许相同的标签从不同的线程组分开整理,如果需要的话。】(百度翻译)

#Samples:【相同标签的样本数】,请求数。

Average:平均响应时间。

    1,2,3,4,5,6,7,8---这组数据的平均响应时间为45/8=5.625。

Median:中位数。

    1,2,3,4,5,6,7,8,9---该组数据的中位数为5.

90%Line:【90%的样品不超过这个时间。剩下的样本至少和这个一样长。(第九十百分位数)】翻译何解?

     通常有人将“90%Line”这个指标理解为90%用户的响应时间。

     这个时候可以引申出来一个比较易理解的概念:众所周知,中国是一个人口大国,为衡量经济发展的情况,相关统计部门每年都会进行统计,xxx人已经实现脱贫(当然、具体标准就不扯了),那么这块的人数是怎么统计出来的呢?

     当然、一个一个去统计是不现实的(当下),那么这个时候,90%Line指标就显得有效,同理,我们先带入进去,概念为“90%Line的平均响应时间”,按这个概念来讲,是完全不科学的;不能排除富到极点的人,也不能排除穷到极点的人,难道不是么?

     0,1,2,3,4,5,6,7,8,9;90%的数为0,1,2,3,4,5,6,7,8,90%Line为(0+1+2+3+4+5+6+7+8)/9,这样的理解显然是不正确的。

     那么,再代入翻译中的概念【90%的样品不超过这个时间】,假设0,1,2,3,4,5,6,7,8,9,90%Line的值为8,其言下之意为没有超过8的数都为“贫穷”,相比平均响应时间,可信度比较高。

95%Line:同上。

99%Line:同上。

Min:最小值。

Max:最大值

Error%:错误占比。

Throughput:吞吐量。

Received KB/sec:接收KB/SEC -以每秒接收千字节测量的吞吐量。

Sent KB/sec:发送KB/SEC -以每秒千字节发送的吞吐量。

  

Jmeter(三十五)聚合报告的更多相关文章

  1. Jmeter(三十五)_分布式

    jmeter分布式简单步骤说明: 1:添加远程服务器IP到配置文件 在JMETER_HOME / bin / jmeter.properties中,找到名为“ remote_hosts ” 的属性,并 ...

  2. Jmeter(三十五)_精确实现网页爬虫

    Jmeter实现了一个网站文章的爬虫,可以把所有文章分类保存到本地文件中,并以文章标题命名 它原理就是对网页提交一个请求,然后把返回的所有值提取出来,利用ForEach控制器去实现遍历.下面来介绍一下 ...

  3. Jmeter(三十五) - 从入门到精通进阶篇 - 关联(详解教程)

    1.简介 上一篇中介绍了如果想要同时发送多条请求,那么怎样才能让每条数据某些请求参数改变呢.这就用到了jMeter参数化.在实际测试场景中,我们往往还有这样的需求,登录后服务器响应的token作为下次 ...

  4. FreeSql (三十五)CodeFirst 自定义特性

    比如项目内已经使用了其它 orm,如 efcore,这样意味着实体中可能存在 [Key],但它与 FreeSql [Column(IsPrimary = true] 不同. Q: FreeSql 实体 ...

  5. NeHe OpenGL教程 第三十五课:播放AVI

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  6. JAVA之旅(三十五)——完结篇,终于把JAVA写完了,真感概呐!

    JAVA之旅(三十五)--完结篇,终于把JAVA写完了,真感概呐! 这篇博文只是用来水经验的,写这个系列是因为我自己的java本身也不是特别好,所以重温了一下,但是手比较痒于是就写出了这三十多篇博客了 ...

  7. Java进阶(三十五)java int与integer的区别

    Java进阶(三十五)java int与Integer的区别 前言 int与Integer的区别从大的方面来说就是基本数据类型与其包装类的区别: int 是基本类型,直接存数值,而Integer是对象 ...

  8. Gradle 1.12用户指南翻译——第三十五章. Sonar 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  9. SQL注入之Sqli-labs系列第三十四关(基于宽字符逃逸POST注入)和三十五关

    开始挑战第三十四关和第三十五关(Bypass add addslashes) 0x1查看源码 本关是post型的注入漏洞,同样的也是将post过来的内容进行了 ' \ 的处理. if(isset($_ ...

  10. “全栈2019”Java多线程第三十五章:如何获取线程被等待的时间?

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

随机推荐

  1. $trainClassLayer.find('input[name=data-item-checkbox]').eq(index).change();//激活第index+1那个checkbox

    ☆ $.each(data, function (index, org) { if (org.alreadySent) { $trainClassLayer.find('input[name=data ...

  2. Go Example--关闭通道

    package main import ( "fmt" ) func main() { jobs := make(chan int, 5) done := make(chan bo ...

  3. shell dict 操作

    shell 读取文件,利用dict 合并第一列 . #!/bin/bash result_file="a" declare -A mydict total=`cat ${resul ...

  4. oracle之rman备份

    rman必须在oracle的归档模式下才能进行 查看数据库是否为归档状态,在oracle数据库的命令行输入 archive log list; 首先关闭数据库 shutdown immediate; ...

  5. export的变量另开一个终端失效解决方法

    有时候,我们需要把一个export的变量全局话,否则每开一个终端又需要重新export,很是麻烦 首先直接export某个变量的话就只能在当前子终端生效,另开一个终端就失效了 如果修改.bash_pr ...

  6. day44 数据库学习 索引 引用自egon 老师博客

    MySQL索引管理 总结 #索引是存在硬盘中的, #索引的功能, 1.可以加速查询 2.但是他会降低写入和删除的速度 所以不能乱加索引 总结二 1 最左前缀匹配原则 2设置的索引,它的字段中的内容占空 ...

  7. Using gcc stack debug skill

    The stack error is hard to debug, but we can debug it assisted by the tool provided by GCC. As we kn ...

  8. Atheros AR9285坑爹网卡仅仅有54M/65M,开启150M速率的方法

    版权声明:Max Sky 原创文章.转载时请保留全部权并以超链接形式标明文章出处.否则将追究相关法律责任. https://blog.csdn.net/maxsky/article/details/3 ...

  9. vue的watcher 关于数组和对象

    数组 不能被监听到的情况 1.直接下标赋值(但对象直接修改原有属性值可以渲染视图,虽然也监听不到) 2.修改数组length 解决方法: this.$set(this.arr,index,val) p ...

  10. [转]Proxy代理详解

    一.代理的概念 动态代理技术是整个java技术中最重要的一个技术,它是学习java框架的基础,不会动态代理技术,那么在学习Spring这些框架时是学不明白的. 动态代理技术就是用来产生一个对象的代理对 ...