JMeter学习笔记--JMeter监听器
监听器(Listeners)是一种展示采样结果的测试元件,采样结果可以通过树、表格、图片加以展示,或者简单地写入某个结果文件之中。
注:不同的监听器通过不同的方式展示服务器响应信息,但它们都将同样的原始数据记录到某个输出文件中(在某个监听器中指定一个输出文件)
”Configure“ 按钮可以被用来配置哪些数据会被写入到结果文件之中,以及结果文件的格式CSV或者XML。与XML文件相比,csv文件占用的磁盘空间要小很多,当采样次数较多时,建议使用csv格式。另外测试人员可以使用简单控制器将一系列采样器组合起来,并为简单控制器添加一个监听器,多个采样器可使用相同的结果文件,前提是它们有相同的配置。
- 监听器默认配置:监听器默认保存哪些数据域,可以在jmeter.properties(或者user.properties)文件中通过属性定义。这些属性会作为监听器配置对话框的默认设置,还会影响命令行-l标识指定的日志文件(通常针对非GUI模式)。如在jmeter.properties中找到如下行:jmeter.save.saveservice.output_format= 如何保存采样信息是可以配置的,要获取最全面的信息,请选择“XML”格式,并在测试计划选中“Function Test Mode"复选框,如果复选框没有选中,那么默认保存的数据中会包含时间戳、数据类型、线程名、标签、相应时长、消息、编码以及成功标志。
- sample_variables属性用来定义一些补充JMeter变量,这些变量的值会和采样结果一起被保存到JTL文件中。这些变量会作为补充列写入到CVS文件中,或作为补充属性写入到XML文件中。
- 配置采样结果的保存格式:使用配置对话框来设置将哪些数据保存到结果文件中(JTL)以CSV结尾的选项只影响CSV格式的结果文件;以XML结尾的选项只影响XML格式的结果文件。目前CSV格式的结果文件,不能记录包含换行符的数据。注意:cookies、method和查询语句会作为”Sampler Data“的一部分加以保存。
- 非GUI模式运行测试:当JMeter以非GUI模式运行时,可以使用-l(这是字幕,非数字1)标签为测试创建一个监听器(位于测试树的最顶层)。该监听器是测试计划新增的监听器,并不影响测试计划中原有的监听器。可以通过jmeter.properties文件中定义的属性来对该监听器进行配置。示例如下:jmeter -n -t testplan.jmx -l testplan_01.jtl -j testplan_01.log,需要注意,JMeter日志消息默认会写到jmeter.log中,每次测试运行都会重新创建该文件,若需要保存每次运行的日志文件,就需要用到-j选项,JMeter2.3.1及以后版本,支持在日志文件名中使用变量。如果文件名中包含成对的单引号,那么文件名就会以Simple Date Format格式来处理,而且文件名会携带上当前时间。例如:log_file='jmeter_'yyyyMMddHHmmss'.tmp',它能为每个日志文件生成唯一的文件名。
- 监听器资源占用:如果监听的采样器数目很多,那么监听器会占用大量内存。目前大多数监听器会保存每一次采样的数据备份,如:
- Simple Data Writer
- BeanShell/BSF Listener
- Mailer Visualizer
- Monitor Results
- Sunmary Report
而下面的这些采样器不再保存所有单次采用的副本,因为采用周期相同的采样会被聚合起来,如此一来,监听器需要的内存会减少,特别是在大多数采用只耗费一秒或两秒的情况下
- Aggregate Report
- Aggregate Graph
- Distribution Graph
要减少监听器占用的内存,请选择Simple Data Writer,并使用CSV格式保存结果文件
- CSV记录格式:依赖于配置监听器过程中选择的数据域,只有指定的数据会被记录到结果文件之中,列的顺序在结果文件中是固定的。
- timeStamp - in milliseconds since 1/1/1970
- elapsed - in milliseconds
- label - sampler label
- responseCode -e.g. 200,404
- responseMessage - e.g. OK
- threadName
- dataType -e.g. text
- success - true or false
- failureMessage - if any
- bytes - number of bytes in the sample
- grpThreads-number of active threads in this thread group
- allTreads- total number of active threads in all groups
- URL
- Filename - if Save Response to File was used
- latency - time to first response
- encoding
- SampleCount - number of samples(1,unless multiple samples are attregated)
- ErrorCount - number of errors (0 or 1,unless multiple samples are attregated)
- Hostname - where the sample was generated
- IdleTime - number of milliseconds of "Idle" time (normally 0)
- variables --if specified
- XML记录格式:采用节点的名称可以是“sample"或者”httpSample"
- 采样属性:
- by - Bytes
- de - Data encoding
- dt - Data type
- ec - Error count(0 or 1 , unless mulitple samples are aggregated)
- hn - Hostname where the sample was generated
- it - Idle Time
- lb -Label
- lt - Latency=time to initial response(milliseconds) -not all samplers support this
- na - Number of active threads for all thread groups
- ng- Number of active threads in this group
- rc -Response Code(e.g. 200)
- rm - Response Message(e.g. OK)
- s - Success flag(true/false)
- sc- Sample count
- t - Elapsed time(milliseconds)
- tn - Thread Name
- ts -timeStamp
- varname -Value of the named variable
- 保存响应数据:使用Save_Responses_to_a_file 它会为作用域内的每个采样器产生一个结果文件,文件名同采样器名称。
- 加载(读取)响应数据
- 保存监听器GUI的数据:JMeter可以将任何监听器保存为一个PNG文件,用户可以在测试树种选择某个监听器后,右击选择“Save Screen As Image
JMeter学习笔记--JMeter监听器的更多相关文章
- JMeter学习笔记--JMeter常用测试元件
JMeter测试计划有一个被称为“函数测试模式”的选项,如果被选择,它会使Jmeter记录来自服务器返回的每个取样的数据.如果你在测试监听器中选择一个文件,这个数据将被写入文件.如果你尝试一个较小的测 ...
- JMeter学习笔记--JMeter执行顺序规则
JMeter执行顺序规则: 配置元件 前置处理器 定时器 采样器 后置处理器(除非服务器响应为空) 断言 监听器 只有当作用域内存在采样器时,定时器.断言.前置/后置处理器才会被执行,逻辑控制器和采样 ...
- JMeter学习笔记--JMeter属性和变量
JMeter属性统一定义在jmeter.properties文件中.JMeter属性在测试脚本的任何地方都是可见的(全局),通常被用来定义一些JMeter使用的默认值.如属性remote_hosts定 ...
- JMeter学习笔记--JMeter前置处理器
前置处理器被用来修改作用域内的采样器 HTML 链接解析器:解析从服务器得到的HTML响应,并从中提取链接和表单,使用perl型的正则表达式来寻求匹配项. HTML URL重写修饰符:使用URL重写来 ...
- Jmeter学习笔记ONE
最近想学一些关于性能测试方面的知识,其实之前已经初步了解了Jmeter工具,它是一个轻量级的性能测试工具,开源并且免费,相比于Loadrunner来说用起来更简便. JMeter 可以用于对服务器.网 ...
- JMeter学习笔记01-安装环境
记录关于JMeter学习的内容.方便复习. 1)JMeter运行环境 因为JMeter是用纯java写的.所以运行的时候需要java的运行环境. 去java官网下载,点免费下载或所有Java下载都行, ...
- JMeter学习笔记(五)-总结
本周主要学习了JMeter如下几方面内容: (1)Bdboy录制方式: (2)JMeter的代理录制方式: (3)关联,在关联时我们要找到哪些内容是要关联的,这个主要通过分析哪些内容是由服务器返回的, ...
- JMeter学习笔记(二)
3.JMeter测试计划要素 JMeter中一个脚本即是一个测试计划,也是一个管理单元.JMeter的请求模拟与并发数(设置线程数,一个线程代表一个虚拟用户)设置都在脚本文件中一起设置. 要素一:脚本 ...
- Jmeter学习笔记
Jmeter安装 Jmeter组件介绍 Jmeter
随机推荐
- Page Redirect Speed Test
现在,有两种方法可以实现网页的自动跳转. (1) 用html自带的<meta>标签(如下)可以实现网页的自动跳转,而且可以控制跳转的延时. <meta http-equiv=&quo ...
- jQuery的deferred对象使用笔记
一.什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作.其中,既有异步的操作(比如ajax读取服务器数据),也有同步的操作(比如遍历一个大型数组),它们 ...
- android 下的网络图片加载
Android图片的异步加载,主要原理: 加载图片时先查看缓存中时候存在该图片,如果存在则返回该图片,否则先加载载一个默认的占位图片,同时创建一个通过网络获取图片的任务并添加,任务完成后放松消息给主线 ...
- Redis自学笔记 --Hash、List、Set类型简述
Hash类型 hset key f ...
- Typescript declaration: Merge a class and an interface
参考: https://stackoverflow.com/questions/47670959/typescript-declaration-merge-a-class-and-an-interfa ...
- SpringApplicationConfiguration 这个不能用 解决方案
使用的test包的版本号要与spring的一致,避免jar包依赖冲突 直接用注解 @RunWith(SpringRunner.class)@SpringBootTest @SpringApplicat ...
- 安装--->Tomcat监控工具Probe
1.Porbe介绍 psi-probe用于对Tomcat进行监控,比tomcat的manager强大很多. 2.下载 probe-2.3.3.zip 或者 probe.war 3.将下载好的war ...
- Missing styles. Is the correct theme chosen for this layout? Use the Theme combo box above the layou
android无法静态显示ui效果. Missing styles. Is the correct theme chosen for this layout? Use the Theme combo ...
- C#.NET常见问题(FAQ)-程序如何单步调试和设置断点
对于控制台程序而言,直接按F10(不按F5运行)就可以单步运行,当前运行行会显示为黄色(不管是一条语句,还是一个函数,都会直接执行完毕得到结果) 你可以在变量名上右击添加监视(会自动放到监视1中) ...
- C# 单元测试几个方法的用法
单元测试的基本方法是调用被测代码的函数,输入函数的参数值,获取返回结果,然后与预期测试结果进行比较,如果相等则认为测试通过,否则认为测试不通过. 1.Assert类的使用 Assert.Inconcl ...