无法使用 Apache JMeter 生成汇总报告

Can't generate Aggregate Report with Apache JMeter

我遇到了 Apache JMeter 的所有问题,它似乎开发得非常差,与最新版本的 Java SE 甚至它本身都不兼容!

我一开始只是因为应用程序附带的(本机)深色主题而抛出错误...

完成这些工作后,我现在尝试为我的负载测试线程组生成一个聚合报告,我 运行 从命令行使用 PowerShell 包装器,它只接受一些参数并传递它们作为 JMX 的变量(持续时间、循环计数等)。

聚合报告正在生成并保存类似于摘要报告的 CSV,但...不显示百分位数和吞吐量等,而是每个请求都在其自己的行中。

进一步阅读后,我需要继续手动处理 JMeter 能够生成的单一报告生成的结果(真的吗?),但是,遵循 I add another command to generate the Aggregate from the csv summary and it throws some more abstract errors which appears to be a result of a Java version conflict (according to t)

每个人都认为 Java SE 17 是问题所在,所以我卸载了 Java 17 并安装了人们认为有效的早期版本 (v16),现在我什至无法加载 csv进入程序...

编辑:我再次删除了深色主题,现在错误已修复。

我只想在负载测试后生成一个聚合报告...我如何才能在如此复杂和简陋的 JMeter 中完成这个看似简单的任务?

谢谢!

这是JMeter Bug 65300

的结果

如果您不能使用 Java 8(因为您得到的错误是针对 Java 9 及更高版本的),您可以将 line 112 of your jmeter.bat startup script 修改为:

set JAVA9_OPTS=--add-opens java.desktop/sun.awt=ALL-UNNAMED --add-opens java.desktop/sun.swing=ALL-UNNAMED --add-opens java.desktop/javax.swing.text.html=ALL-UNNAMED --add-opens java.desktop/java.awt=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.desktop/sun.awt.shell=ALL-UNNAMED

另请注意,可以使用 JMeter Plugins Command Line Tool 生成汇总报告的 CSV 版本:

JMeterPluginsCMD.bat --generate-csv aggregate-report.csv --input-jtl /path/to/test/result.csv --plugin-type AggregateReport