如何从仪表板报告(JMeter)中保存图表

How to save charts from dashboard report (JMeter)

关于如何生成 JMeter 报告的答案:

还有一个问题 w/out 已接受答案 Solution to save Jmeter Dashboard reports to Confluence

虽然最终我现在需要将信息放入 Confluence 中,但我希望至少能够一个接一个地复制 charts/graphs,但是尽管在 Chrome 和 Firefox 中我都有上下文菜单保存图片 ('Save image'),但是生成的图像在两个浏览器中看起来都是空的。如何将 HTML 报告中的图表保存为图像?

下面是一个 png 文件的 hexdump 的开始(它们都是 32Kb 大小)。

0000000 211   P   N   G  \r  \n 032  \n  [=10=]  [=10=]  [=10=]  \r   I   H   D   R
0000010  [=10=]  [=10=]  \b 213  [=10=]  [=10=] 003      \b 006  [=10=]  [=10=]  [=10=]   ?   ?   p
0000020  \n  [=10=]  [=10=]      [=10=]   I   D   A   T   x   ^   ?   ?   A 001  [=10=]
0000030  [=10=]  \b 002   1   ?   _   ?       7 033   0   |   ?   s 004  \b
0000040 020       @ 200  [=10=] 001 002 004  \b 020       @ 200  [=10=] 001 002
0000050 004  \b 020       @ 200  [=10=] 001 002 004  \b 020       @ 200  [=10=]
0000060 001 002 031 201   e 222  \n   J 200  [=10=] 001 002 004  \b 020    
0000070   @ 200  [=10=] 001 002 004  \b 020       @ 200  [=10=] 001 002 004  \b
0000080 020       @ 200  [=10=] 001 002 004  \b 020       p   ?   " 236 200
0000090  [=10=] 001 002 004  \b 020       @ 200  [=10=] 001 002 004  \b 020 

您可以使用 JMeterPluginsCMD 从报告中生成图像

There is small command-line utility for generating graphs out of JTL files. It behave just like right-click context menu on all graphs. The tool can generate PNG

Generating PNG:

JMeterPluginsCMD.bat --generate-png test.png --input-jtl results.jtl --plugin-type ResponseTimesOverTime --width 800 --height 600

为了使用该插件生成图表,您很可能还需要安装 jpgc - Standard Set 插件和 graph-s 插件(在 JMeter 的插件管理器中可用页面搜索 graph 并安装适合所需图表描述的内容)。

用于选择图表类型的参数 --plugin-type 可能并不总是由与 HTLM 报告中的图表名称相同的措辞组成,请参阅 JMeterPluginsCMD 页面上的参数列表以及用于自定义外观的参数列表图。

图表不正常<img> they reside in <canvas>标签

如果您真的想继续这样做,您可以找到要保存的 canvas 元素并在其上调用 toDataUrl() 函数,例如:

document.getElementById('responseTimesOverTime').getElementsByTagName('canvas')[0].toDataURL()

完成后,您将以 data:image/png;base64,............... 文本形式得到所谓的 Data URL 作为输出。

如果您将此文本放入浏览器 URL 区域,图像将打开:

这将是可以保存的 "real" 图片。

一个更简单的选择是使用像 BM.Sense which can generate PDF reports out of the .jtl results files which can be added to the Confluence via the PDF Macro

这样的服务