如何在 K6 工具上一次性为每个场景生成一份总结报告?

问题描述

我可以使用 K6 成功运行一些性能测试。但是,我一直在尝试同时为 4 个场景中的每一个生成一个汇总报告,但我不能。解决方法是保留一个场景(评论其他场景或删除它们),运行测试并生成摘要报告。然后,交换场景并重复前面的步骤。

有没有什么方法可以让我生成 4 份总结报告,每份报告都针对每个场景进行一次运行?我这样做了,但我得到了一份总结报告,没有拆分每个场景的数量

解决方法

不幸的是,这现在不容易实现。

避免手动注释和重新运行脚本的一种创造性解决方案是使用环境变量有条件地启用某些场景。看看this example on the forum

摘要报告只是基于测试指标的一些方便计算的结果,但如果您不介意自己计算这些指标,所有指标都有一个默认的 "scenario" 标签,因此您可以根据场景过滤指标在您希望使用的任何输出系统或处理工具中。例如,如果您将结果导出为 JSON,或者在 Grafana 仪表板中使用 InfluxQL 等,您可以使用 jq 进行计算。

您可能还对 recent changes to the summary report(暂定在即将发布的 v0.30.0 中登陆)感兴趣,这将使生成报告更加灵活。目前没有计划将它按场景分开,但您可以在 GitHub issue 中随意提出该功能,我们可以在那里讨论(免责声明:我是维护者之一)。