性能测试:JMeter监听器

 

JMeter中的监听器有很多种


,这里主要介绍常用的几种:聚合报告、图形结果、查看结果树以及断言结果。

聚合报告 Aggregate Report

 作用:记录这次性能测试的总请求数、错误率、用户响应时间(中间值、90%、最少、最大)、吞吐量等,用以帮助分析被测试系统的性能。在聚合报告中,各个响应时间不能超过客户的要求,就是合格,例如不能超过响应时间2s,大于2s就是不合格的.

在这里用一个测试连接进行尝试:


点击运行,得到聚合报告如下,聚合

报告可以是调优的参考:


1. Label :每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值;

2.#Samples :表示测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代1次,那么这里就显示对应的 HTTP Request的执行次数是10;(因为在模拟过程中,经过两次lcts5... 所以在这里显示的总执行次数为20)

3. Average :平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间;(通过报告可以得到登录行为在哪个HTTP Request的响应时间最长)

4.Median :50%用户的响应时间小于此值,表示中位数;

5.90%Line :90%用户的响应时间小于此值;

6.Min:最少响应时间;

7.Max:最大响应时间;

8.Error% :本次运行测试中出现错误的请求的数量/请求的总数;

9.Throughput: 吞吐量,默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数 KB/sec;

10.Received KB/sec :每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec;

11.Sent KB/sec:每秒发送多少KB的数据;

图形结果 Graph Results

作用:通过图形展示出本次性能测试数据的分布。 图形结果一般作为聚合报告的分析辅佐。


1、样本数目:总共发送到服务器的请求数(聚合报告中的TOTAL #Samples)。

2、最新样本:代表时间的数字,是服务器响应最后一个请求的时间。

3、吞吐量:服务器每分钟处理的请求数。

4、平均值:总运行时间除以发送到服务器的请求数。

5、中间值:代表时间的数字,有一半的服务器响应时间低于该值而另一半高于该值。

6、偏离:服务器响应时间变化、离散程度测量值的大小,或者,换句话说,就是数据的分布。

查看结果树 View Results Tree

 作用:以结果树的形式显示测试结果。查看结果树监听器放置的位置不同,得到的结果也不同。在线程组下添加察看结果树,查看线程组下所有请求的结果;放在具体某个请求下,只查看此请求的结果;若放在某个控制器节点下,则查看此控制器下节点执行的结果。


 如下图,这里的监听器放在线程组下,所有会显示所有的HTTP Request循环10次的结果。绿色代表测试通过,红色代表失败。

    而在下图中,监听器放在第一个HTTP Request下面,因此看到的是同个HTTP Request循环10次的结果。

取样器结果

Thread Name: 线组名称;

Sample Start: 启动开始时间 ;

Load time: 加载时长 ;

Latency: 等待时长 ;

Size in bytes: 发送的数据总大小 ;

Headers size in bytes: 发送头大小 ;

Body size in bytes: 发送数据的其余部分大小 ;

Sample Count: 发送统计 ;

Error Count: 错误统计 ;

Response code: 返回码 ;

Response message: 返回消息 ;

Response headers:返回头信息 ;

请求 

数据获取方式、路径、地址等以及传递的参数、cookie ;

响应数据 

响应加载的页面html;

断言结果 Assertion Results

   作用:用于检查测试中得到的响应数据等是否符合预期,用以保证性能测试过程中的数据交互与预期一致,一般与结果树结合使用。

如何设置/添加断言?

一个HTTP可以添加一条断言。如下图,给第二条HTTP增加一个响应断言


1、响应文本:响应服务器返回的文本内容,HTTP协议排除Header部分;

2、响应代码:指请求返回的状态,如200 ;

3、响应信息:指请求返回的响应信息,如OK、not found ;

4、Response Headers : 匹配响应的头信息 ;

5、Request Headers :请求头信息;

6、URL样本:匹配URL链接;

7、Document(text):对文档内容进行匹配。通过Apache Tika从各种的文档中提取的文本进行验证,包括响应文本,pdf、word等等各种格式。jmeter会用Apache Tika去解析服务器响应内容,耗内存、也耗时间,解析易失败,尽量少用或不用。多用响应文本方式来进行断言验证。

8、Ignore Status:一个请求有多个响应断言,其中第一个响应断言选中此项。当第一个响应断言失败时可以忽略此响应结果,继续下一个断言。如果下一个断言成功则还是可以判定事物成功的。

9、Resquest Data:相应的数据。

模式匹配规则

1、包括:响应内容包括需要匹配的内容即代表响应成功,支持正则匹配;

2、匹配:(1) 相当于 equals 。当返回值固定时,可以返回值做断言,效果和equals相同;(2) 正则匹配 。 用正则表达式匹配返回结果,但必须全部匹配。 即正则表达式必须能匹配整个返回值,而不是返回值的一部分。 

3、Equals : 返回结果与你指定断言完全一致,大小写敏感,需要匹配的内容是字符串非正则表达式 ;

4、SubString:响应内容包含需要匹配的内容才代表响应成功,大小写敏感,需要匹配的内容是字符串非正则表达式 。 

举例:

断言第二个HTTP的相应代码为200。当返回状态码确实为200时,断言结果中不提示异常,结果树中不报错。


而当把断言改为600时,看到以下情况:

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,594评论 18 139
  • JMeter中的监听器有很多种,这里主要介绍常用的几种:聚合报告、图形结果、查看结果树以及断言结果。 聚合报告 A...
    LAVERNE_LY阅读 2,301评论 0 0
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 10,858评论 6 13
  • 喜欢一个人,带上耳机, 独自行走在繁华街道上, 多希望一直这样走下去, 让脑袋放空,让思绪放飞。 躺在床上,看着四...
    笨蕉蕉阅读 161评论 0 0
  • 文/寸心 图|网络 【原创】 丁酉未剩几天,年会聚会很欢 我也凑个热闹,破例做个盘点 已逾...
    大為師道阅读 491评论 10 9