zoukankan      html  css  js  c++  java
  • 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

     

      

  • 相关阅读:
    dom event 笔记
    提交安钮 提交一次加了 59秒倒计时
    时间倒计时
    把表单数据封装成json格式 插件可用
    dbgrid显示access备注信息
    stringgird中使用TClientDataSet排序的问题
    【单位矩阵】【杭电OJ1575】
    【矩阵快速幂】【杭电OJ1757】
    【关键路径】【拓扑排序+逆拓扑排序】【转】
    【拓扑排序】【关键路径】
  • 原文地址:https://www.cnblogs.com/saryli/p/4176837.html
Copyright © 2011-2022 走看看