有没有现成的插件可以从K6生成的JSON输出中生成html报告?我正在尝试构建一个简单的HTML报告,但是生成的输出JSON是无效的,并且无法解析。下面是来自K6的JSON输出。
{"type":"Metric","data":{"name":"data_received","type":"counter","contains":"data","tainted":null,"thresholds":[],"submetrics":null,"sub":{"name":"","parent":"","suffix":"","tags":null}},"metric":"data_received"}
{"type":"Point","data":{"time":"2020-07-30T21:06:05.6026767Z","value":0,"tags":{"group":"::setup"}},"metric":"data_received"}
{"type":"Metric","data":{"name":"iteration_duration","type":"trend","contains":"time","tainted":null,"thresholds":[],"submetrics":null,"sub":{"name":"","parent":"","suffix":"","tags":null}},"metric":"iteration_duration"}
{"type":"Point","data":{"time":"2020-07-30T21:06:05.6026767Z","value":0.09,"tags":{"group":"::setup"}},"metric":"iteration_duration"}发布于 2021-04-14 17:36:39
https://github.com/benc-uk/k6-reporter
此K6扩展旨在通过添加到K6测试代码(JavaScript)中使用,并利用K6 v0.30.0中添加的handleSummary回调挂钩。测试完成后,将向文件系统写入一个HTML文件,其中包含测试摘要数据的格式化且易于使用的版本
要使用,请将此模块添加到您的测试代码中。
从远程托管在GitHub上的捆绑模块导入htmlReport函数
import { htmlReport } from "https://raw.githubusercontent.com/benc-uk/k6-reporter/main/dist/bundle.js";请注意。将main替换为版本标签(例如2.2.0)以使用特定版本
然后在测试的默认函数之外,使用K6在任何测试结束时调用的handleSummary(data)函数对其进行包装,如下所示:
export function handleSummary(data) {
return {
"summary.html": htmlReport(data),
};
}在返回的对象中使用的键是要写入的文件名,可以是任何有效的文件名或路径说明。这是v2.1.1发行版中的更改
htmlReport函数接受一个可选选项映射作为第二个参数,该参数具有以下属性
标题字符串//报告的标题,默认为当前日期多个输出如果您想更好地控制生成的输出或将摘要输出到多个位置(包括标准输出),只需将htmlReport的结果与其他摘要生成器合并,如下所示:
//这将导出为文件名为"result.html“的超文本标记语言,并使用文本摘要导出标准输出
import { htmlReport } from "https://raw.githubusercontent.com/benc-uk/k6-reporter/main/dist/bundle.js";
import { textSummary } from "https://jslib.k6.io/k6-summary/0.0.1/index.js";
export function handleSummary(data) {
return {
"result.html": htmlReport(data),
stdout: textSummary(data, { indent: " ", enableColors: true }),
};
}https://stackoverflow.com/questions/63251440
复制相似问题