结果摘要

这个 shell 脚本创建了一个汇总 JSON,可以用来比较不同的运行。

每次运行创建的 JSON

对于每次运行,kcb.sh 创建一个名为 results.json 的文件,其中包含 Gatling 的输入参数以及结果输出。

每个结果都总结了一次运行,可以进一步在管道中进行处理。每次运行都有一个描述性名称和一个 UUID,用于标识运行。文件名包含时间戳和 UUID,因此将多个结果文件放在一个文件夹中以进行进一步处理非常简单。

kcb.sh 脚本的用户可能希望将有关测试系统 (SUT) 的信息作为结果文件的一部分捕获,以记录信息以供日后使用。为此,用户必须提供一个脚本,该脚本收集信息并将其打印到控制台。对于 ROSA 环境,有一个 rosa_describe.sh,它将收集有关集群的信息。当环境变量 SUT_DESCRIBE 设置时,kcb.sh 调用环境变量 SUT_DESCRIBE 中给出的可执行文件和 CLI 参数来检索测试系统的 JSON 描述。然后将其添加到文件中的 system_under_test 键中。请参阅 oc-keycloak-login/action.yml 如何为 GitHub 工作流设置环境变量。

在从 GitHub 工作流中运行时,文件名将记录在 GitHub 操作输出 kcb_result 中,以便在 GitHub 工作流中的后续步骤中拾取。

结果 JSON 文件中的示例摘录。
{
  "uuid": ...,
  "name": ...,
  "grafana_input": {
    "start": ...,
    "end": ...,
    "input": ...
  },
  "grafana_output": ...,
  "system_under_test": ...
}