首页 > 解决方案 > Jmeter:测试后生成 HTML 报告

问题描述

这些是我生成报告所遵循的步骤:

  1. 我有.jtl文件
  2. 我将给定的示例配置粘贴到我的user.properties文件中apache-jmeter-5.0\bin
  3. 我使用转换.jtl为汇总报告CMDRunner.jar

    java -jar CMDRunner.jar --tool Reporter --generate-csv Demo17Results.csv --input-jtl Demo17Results.jtl --plugin-type AggregateReport
    
  4. 将从第 3 步获得的文件转换csv为 HTML 报告

    我试过(1) jmeter -g Demo17Results.csv -o htmlReports/

Error: csv' does not contain the field names header, ensure the jmeter.save.saveservice.* properties are the same as when the CSV file was created or the file may be read incorrectly when generating report An error occurred: Mismatch between expected number of columns:17 and columns in CSV file:11, check your jmeter.save.saveservice.* configuration or check line is complete

我试过(2) jmeter -n -t Demo17Run.jmx -l Demo17Results.csv -e -o htmlReports/

Creating summariser <summary> Error in NonGUIDriver java.lang.IllegalArgumentException: Results file:Demo17Results.csv is not empty

清空 csv 文件后

Creating summariser <summary> Created the tree successfully using Demo17Run.jmx Starting the test Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary = 0 in 00:00:00 = ******/s Avg: 0 Min: 9223372036854775807 Max: -9223372036854775808 Err: 0 (0.00%) Tidying up ... Error generating the report: org.apache.jmeter.report.core.SampleException: Could not read metadata ! ... end of run

我在生成 Jmeter HTML 仪表板报告时做错了什么?

标签: jmeterreportjmeter-plugins

解决方案


  1. 您不需要第 2 步,JMeter 默认配置就可以生成仪表板
  2. 您不需要第 3 步,需要从Demo17Results.jtl包含完整原始结果的文件创建仪表板,而不是统计表
  3. 尝试通过参数强制删除先前的结果文件来-f重新运行您的测试场景:

    jmeter -n -f -t Demo17Run.jmx -l Demo17Results.jtl -e -o htmlReports/
    

如果没有任何帮助,请仔细检查您是否没有修改所需的结果文件配置设置,并通过将下一行添加到log4j2.xml文件来增加包的JMeter 日志详细程度:report.dashboard

<Logger name="org.apache.jmeter.report.dashboard" level="debug" />

推荐阅读