• JMeter3.0_多维度的图形化HTML报告


    一.新特性简介

    JMeter3.0提供一个用于生成HTML页面格式图形化报告的扩展模块。该模块支持通过两种方式生成多维度图形化测试报告:

    1. 在JMeter性能测试结束时,自动生成本次测试的HTML图形化报告
    2. 使用一个已有的结果文件(如CSV文件)来生成该次结果的HTML图形化报告

    其默认提供的度量维度包括:

    1. APDEX(Application Performance Index)指数
    2. 聚合报告
      • 类似于UI上的Aggregate Report
    3. Errors报告
      • 展示不同错误类型的数量以及百分比
    4. 响应时间变化曲线
      • 展示平均响应时间随时间变化情况
      • 类似于JMeter Plugins在UI上的jp@gc - Response Times Over Time
    5. 数据吞吐量时间曲线
      • 展示每秒数据吞吐量随时间变化的情况
      • 类似于JMeter Plugins在UI上的jp@gc - Bytes Throughput Over Time
    6. Latency time变化曲线
      • 展示Latency time随时间变化的情况
      • 类似于JMeter Plugins在UI上的jp@gc - Response Latencies Over Time
    7. 每秒点击数曲线
      • 类似于JMeter Plugins在UI上的jp@gc - Hits per Second
    8. HTTP状态码时间分布曲线
      • 展示响应状态码随时间的分布情况
      • 类似于JMeter Plugins在UI上的jp@gc - Response Codes per Second
    9. 事务吞吐量时间曲线(TPS)
      • 展示每秒处理的事务数随时间变化情况
      • 类似于JMeter Plugins在UI上的jp@gc - Transactions per Second
    10. 平均响应时间与每秒请求数的关系图
      • 展示平均响应时间与每秒请求数(可以理解为QPS)的关系
    11. Latency time与每秒请求数的关系图
      • 展示Latency time与每秒请求数的关系
    12. 响应时间百分位图
      • 响应时间的百分位分布图
    13. 活动线程数变化曲线
      • 展示测试过程中活动线程数随时间变化情况
    14. 平均响应时间与线程数的关系图
      • 展示平均响应时间与线程数的关系
      • 类似于JMeter Plugins在UI上的jp@gc - Response Times vs Threads
    15. 柱状响应时间分布图
      • 展示落在各个平均响应时间区间的请求数情况
    - Latency time = 接收到响应的第一个字节的时间点 - 请求开始发送的时间点

    from just before sending the request to just after the first response has been received
    -- Apache JMeter Glossary

    - 响应时间(JMeter术语中的Elapsed time) = 接收完所有响应内容的时间点 - 请求开始发送的时间点

    from just before sending the request to just after the last response has been received
    -- Apache JMeter Glossary

    二.快速入门

    1.确认基本配置

    • 在jmeter.properties或者user.properties确认如下配置项:
      jmeter.save.saveservice.data_type=true
      jmeter.save.saveservice.label=true
      jmeter.save.saveservice.response_code=true
      # response_data is not currently supported for CSV output
      jmeter.save.saveservice.response_data=true
      # Save ResponseData for failed samples
      jmeter.save.saveservice.response_data.on_error=false
      jmeter.save.saveservice.response_message=true
      jmeter.save.saveservice.successful=true
      jmeter.save.saveservice.thread_name=true
      jmeter.save.saveservice.time=true
      jmeter.save.saveservice.subresults=true
      jmeter.save.saveservice.assertions=true
      jmeter.save.saveservice.latency=true
      jmeter.save.saveservice.connect_time=true
      jmeter.save.saveservice.samplerData=true
      jmeter.save.saveservice.responseHeaders=true
      jmeter.save.saveservice.requestHeaders=true
      jmeter.save.saveservice.encoding=false
      jmeter.save.saveservice.bytes=true
      jmeter.save.saveservice.url=true
      jmeter.save.saveservice.filename=true
      jmeter.save.saveservice.hostname=true
      jmeter.save.saveservice.thread_counts=true
      jmeter.save.saveservice.sample_count=true
      jmeter.save.saveservice.idle_time=true

      # Timestamp format - this only affects CSV output files
      # legitimate values: none, ms, or a format suitable for SimpleDateFormat
      jmeter.save.saveservice.timestamp_format=ms
      jmeter.save.saveservice.timestamp_format=yyyy/MM/dd HH:mm:ss.SSS
    • 如果希望在Errors报告中展示更详细数据,需要确保如下配置
      • jmeter.save.saveservice.assertion_results_failure_message = true
      • 如果使用了事务控制器(Transaction Controller),确认Generate parent sample为未勾选状态

    2.生成报告

    a. 在压力测试结束时报告

    • 基本命令格式:
      jmeter -n -t <test JMX file> -l <log file> -e -o <Path to output folder>
    • 样例:
      jmeter -n -t E:apache-jmeter-3.0script est.jmx -l LogFile -e -o ./report

    b. 使用已有的压力测试CSV日志文件生成报告

    • 基本命令格式:
      jmeter -g <log file> -o <Path to output folder>
    • 样例:
      jmeter -g E:apache-jmeter-3.0inLogFile -o ./report

    两个样例都会在apache-jmeter-3.0in eport目录下产生如下文件(夹):


    用浏览器打开index.html文件,即可查看各种图形化报告:



    注:在3.0版本,由于源码中字符编码的问题,可能会遇到生成的报告中,中文标签展示为乱码的问题

      解决方案:修改JMeter report模块读取数据源码中的字符集设置为UTF-8,编译后替换到JMETER_HOMElibextApacheJMeter_core.jar

      下载链接:http://pan.baidu.com/s/1kVpsnNx

  • 相关阅读:
    P3913 车的攻击
    P1866 编号
    P1100 高低位切换
    P1469 找筷子
    网络穿透/云端组网/视频拉转推服务EasyNTS上云网关管理平台使用过程中掉线如何排查?
    RTSP协议Web无插件直播平台EasyNVR调用登录接口报“密码加解密错误”如何解决?
    安防视频智能分析平台EasyNVR新版本直接使用老版本的数据库导致界面数据异常的分析
    RTSP协议视频智能分析平台EasyNVR更新版本后无法正常显示平台页面排查步骤
    如何将RTSP/GB28181协议视频监控平台EasyNVR/EasyGBS等录像文件通过ffmpeg转HLS进行播放?
    视频直播/智能分析平台EasyNVR调用登录接口返回‘密码加解密错误’如何修复?
  • 原文地址:https://www.cnblogs.com/Akubi/p/5946897.html
Copyright © 2020-2023  润新知