我正在使用 request.batch 运行 K6 测试,其中每个测试的请求数都可以改变。
req = [req0, req1, req2, ...];
let res = http.batch(req);
然后,我尝试为每个请求运行“检查”,并使用 while 循环来执行此操作。
while (i < req.length) {
check(
res[i],
{" ${i} - status 200": (r) => r.status === 200 }
);
i++;
}
但是 K6 将所有“检查”测试结果累积在一个测试中,因为测试消息不会解析我通过的变量。输出在测试结束时打印此消息:
done [===============] 10s / 10s
✓ ${i} - status 200
我尝试使用不同的方式添加参数,但没有用:
{ i + " - status 200": (r) => r.status === 200 }
{' ${i} - status 200': (r) => r.status === 200 }
{` ${i} - status 200`: (r) => r.status === 200 }
{" %d - status 200", i : (r) => r.status === 200 }
我想知道是否有任何原因要在此处传递自定义消息。