【发布时间】:2022-01-16 03:20:37
【问题描述】:
我们如何编写具有动态阶段数的 k6 脚本?本质上,如果在一次运行中我需要 2 个阶段,参数是恒定的或具有算术或几何级数,而在第二次运行中我想运行 3/4/5.....n 个阶段。
这是在 k6 中定义场景/阶段的方式:
export let options = {
scenarios: {
stage_1: {
executor: 'constant-arrival-rate',
rate: __ENV.STAGE_1_RPS,
timeUnit: '1s',
startTime: __ENV.STAGE_1_START_TIME,
duration: __ENV.STAGE_1_DUR,
preAllocatedVUs: __ENV.STAGE_1_VUS
},
stage_2: {
executor: 'constant-arrival-rate',
rate: __ENV.STAGE_1_RPS + 100,
timeUnit: '1s',
startTime: __ENV.STAGE_2_START_TIME,
duration: __ENV.STAGE_2_DUR,
preAllocatedVUs: __ENV.STAGE_2_VUS
}
}
使用上面的格式,如果需要运行n个不同数量的阶段,则需要编写n个不同的脚本,这似乎是一个不错的方法。
浏览过 k6 文档,但似乎没有一些特性/参数可以提供上述功能:https://k6.io/docs/using-k6/
【问题讨论】:
标签: javascript testing automation k6