参考:http://jmeter.apache.org/usermanual/listeners.html

Listener是用来展示Sampler结果的元件。

结果可以被展示在树、表格、图表或者简单写入到一个log文件。

看所有Sampler的具体内容,可使用的Listeners:"View Results Tree" 或者 "View Results in table"。

如果Sample很多的话,Listener可能会用掉很多内存。如果想最小化使用的内存量,可以使用 Simple Data Writer,并且使用CSV格式。

输出到文件

不同的Listener以不同的方式来展示响应信息。然而,不同的listener写入到输出文件的数据是相同的。

1. 输出文件路径

Filename:可以输入相对路径,也可以输入绝对路径。

相对路径是相对于当前工作路径,一般默认是“Jmeter安装路径\bin\”。比如,直接在Filename中输入log,则“Jmeter安装路径\bin\”下会出现一个文件为log。

相对路径也可以是相对于当前测试计划的路径。如果filename以“~/”开始,说明是相对于JMX文件位置的路径。比如输入”~/log“,当前测试计划路径为“E:\TestPlan3.jmx”,则输出文件路径为“E:\log”。

如果想使用除了“~/”的前缀,可以在jmeter.properties中定义。比如下面定义为“#/”,则filename输入“#/log”即可。

# Prefix used to identify filenames that are relative to the current base
#jmeter.save.saveservice.base_prefix=~/
jmeter.save.saveservice.base_prefix=#/

2. 输出文件类型

在jmeter.properties中可以直接定义输出的文件默认类型。

# legitimate values: xml, csv, db.  Only xml and csv are currently supported.
#jmeter.save.saveservice.output_format=csv

也可以点击 Configure按钮,直接勾选中“Save As XML”保存文件为XML类型。

CSV文件比XML文件小很多,所以如果产生很多sample的话,建议使用CSV。

如果想输出最多的信息,我们需要选择保存文件为xml,并且在Test Plan中勾上 “Functional Test Mode”。

“Functional Test Mode”不勾上的话,默认存储:time stamp, the data type, the thread name, the label, the response time, message, code, a success indicator。

“Functional Test Mode”勾上的话,所有的信息,包括整个响应数据都会被存储下来。参见XML中 responseData。

3. 输出文件的内容

点击Configure,可以配置需要输出的内容。

带有(CSV)后缀的项,只能应用于CSV格式的文件。

带有(XML)后缀的项,只能应用于XML格式的文件。

Sample Result Save Configuration默认选中项参见jmeter.properties的配置。

查看文件

1. CSV格式的文件

CSV显示的列取决于Configure中选中的项。显示顺序如下:

timeStamp - 以milliseconds 为单位,显示自从 1/1/1970以来的时间段
elapsed - 以 milliseconds为单位
label - sampler 标记,一般就是Sampler 名
responseCode - 比如 200, 404
responseMessage - 比如 OK
threadName
dataType - 比如 text
success - true 或者 false
failureMessage - 如果有的话就显示
bytes - sample的字节数
sentBytes - sample发送的字节数
grpThreads - 该 thread group active的线程数
allThreads - 所有组的所有active的线程数
URL
Filename - 使用 Save Response to File 时,文件名
latency - 从第一次 response开始的时间
connect - 从建立连接开始的时间
encoding
SampleCount - sample 数 (一般是1 ,除非合计了多个sample)
ErrorCount - errors数 (一般是0或1,除非合计了多个sample)
Hostname - 发送 sample的机器名
IdleTime - 以 milliseconds为单位显示 'Idle' 时间(一般是0)
Variables- 如果定义变量的话,这里就显示变量

2. XML格式的文件

示例如下:

<?xml version="1.0" encoding="UTF-8"?>
<testResults version="1.2"> ………… <sample t="0" lt="0" ts="1144372616082" s="true" lb="Example Sampler" rc="200" rm="OK" tn="Listen 1-1" dt="text" de="ISO-8859-1" by="10">
<responseHeader class="java.lang.String"></responseHeader>
<requestHeader class="java.lang.String"></requestHeader>
<responseData class="java.lang.String">Listen 1-1</responseData>
<responseFile class="java.lang.String">Mixed2.unknown</responseFile>
<samplerData class="java.lang.String">ssssss</samplerData>
</sample> </testResults>

每个属性的含义如下:

保存Response数据

XML格式的输出文件可以保存Response数据。勾上“Save Response Data(XML)”即可。

然而,这种方式会造成日志文件很大,而且文件必须被编码。同时,这种方式会造成图片不能被保存,只有TEXT格式的sample response可以被保存成功。

想要解决这个问题,我们可以使用 Listener–> Save Responses to a file。使用这个监听之后,系统会对监听范围内的每次请求保存一个html文件。默认保存在“jmeter安装路径/bin/”下。

直接打开已存在的结果文件

如果之前测试已经存在一个CSV或者XML文件,可以直接在Listener中打开。

任选一个Listener,点击filename后的Browse按钮,找到要打开的文件,点击打开即可。

需要注意的是,在加载新的文件时,jmeter并不会清空任何当前数据,而是进行合并。所以如果想清空之前的数据,必须手动清空。

JMeter 六:Listener的更多相关文章

  1. Jmeter(六) - 从入门到精通 - 建立数据库测试计划(详解教程)

    1.简介 在实际工作中,我们经常会听到数据库的性能和稳定性等等,这些有时候也需要测试工程师去评估和测试,因此这篇文章宏哥主要介绍了jmeter连接和创建数据库测试计划的过程,宏哥在文中通过示例和代码非 ...

  2. Jmeter(六)文件上传和下载文件

    一.Jmeter上传文件 编写脚本:               首先添加一个线程组,然后在线程组里面添加一个http请求,因为是发送数据,所有是post请求,写好上传的地址,然后写好文件路径     ...

  3. Jmeter(六)关联之XPath提取器

    如果请求返回的消息为xml或html格式的,可以用XPath提取器来提取需要的数据 以http://www.weather.com.cn/为例: 先新建一个HTTP请求GetCityURL,获取城市天 ...

  4. Jmeter(六)事务

    事务是性能测试之必不可少的关注点, Jmeter默认把每一个请求都统计成了一个事务, 但有时候我们根据业务需求, 会把多个操作统计成一个事务, Jmeter当然也考虑到了这个需求, 因此我们可以通过逻 ...

  5. Jmeter(六)_前置处理器

     BeanShell PreProcessor  使用BeanShell在请求进行之前进行操作.语法使用与BeanShell Sampler是一样的.但可使用的内置变量稍有不同 参考示例 Jmeter ...

  6. jmeter (六) 登录 token获取

    有时候登录请求中会含有token字段,如下,此时就需要提取token 怎么提取token呢,其实很简单,通过正则表达式就可以了 1.添加http请求:获取登录页面,为“get”方式 2.在此http请 ...

  7. 点读系列《jmeter官方用户手册》

    官网:http://jmeter.apache.org/usermanual/ 说明:十八元件.十九属性.二十函数,涉及清单内容暂未仔细阅读,个人觉得一是仅供使用参考,二是适合单独写文章来解读 一.让 ...

  8. Windows 7下搭建Jmeter测试环境

    jmeter配置.安装 一. 工具描述 apache jmeter是100%的java桌面应用程序,它被设计用来加载被测试软件功能特性.度量被测试软件的性能.设计jmeter的初衷是测试web应用,后 ...

  9. 性能测试 CentOS下结合InfluxDB及Grafana图表实时展示JMeter相关性能数据

    CentOS下结合InfluxDB及Grafana图表实时展示JMeter相关性能数据   by:授客 QQ:1033553122 实现功能 1 测试环境 1 环境搭建 2 1.安装influxdb ...

随机推荐

  1. 洛谷——P1724 东风谷早苗

    P1724 东风谷早苗 题目描述 在幻想乡,东风谷早苗是以高达控闻名的高中生宅巫女.某一天,早苗终于入手了最新款的钢达姆模型.作为最新的钢达姆,当然有了与以往不同的功能了,那就是它能够自动行走,厉害吧 ...

  2. 洛谷——P2952 [USACO09OPEN]牛线Cow Line

    P2952 [USACO09OPEN]牛线Cow Line 题目描述 Farmer John's N cows (conveniently numbered 1..N) are forming a l ...

  3. 2017广西邀请赛 Query on A Tree (可持续化字典树)

    Query on A Tree 时间限制: 8 Sec  内存限制: 512 MB提交: 15  解决: 3[提交][状态][讨论版] 题目描述 Monkey A lives on a tree. H ...

  4. 解决vscode按下ctrl+S的时候自动格式化

    按下ctrl+S的时候自动格式化 为什么需要这种操作? 优点: 保存的时候格式化,让我们的代码自动格式化,减少人工调整. 缺点: 有一些打好包的JS有时候修改一下,但不需要格式化,因为打好包就是要压缩 ...

  5. js中ajax的异步性

    最近项目里遇到ajax异步性的问题,简化后的代码如下: function ajaxGetEvents(calendarView, time) { var year = time.getFullYear ...

  6. 有的系统区apk需要对其系统签名,才能正常使用。

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 向方案公司索要platform.x509.pem 和platform.pk8这两个文件. ...

  7. 【最大权闭合子图】BZOJ1497[NOI2006]-最大获利

    [题目大意] 建立第i个通讯中转站需要的成本为Pi(1≤i≤N).另外公司调查得出了所有期望中的用户群,一共M个.关于第i个用户群的信息概括为Ai, Bi和Ci:这些用户会使用中转站Ai和中转站Bi进 ...

  8. Learning Spatial Regularization with Image-level Supervisions for Multi-label Image Classification

  9. 神勇的产品经理之路系列-10 PD三板斧

    一.三板斧的来源及理解  三板斧 古代长兵器的一种,又名“马战斧”.相传为程咬金所用.斧阔五寸,柄长七尺.用法有劈.砍.剁.搂.截.撩.云.片.推.支等. 比喻义:解决问题的方法不多,但却非常管用. ...

  10. HDU 4634 Swipe Bo (2013多校4 1003 搜索)

    Swipe Bo Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...