菜单
开源

外部控制

通过 k6 的 REST APICLI 在运行时控制和扩展执行。

之前,使用 pauseresumescale CLI 命令全局控制 k6 执行。此执行器通过提供可在运行时控制 k6 执行的更好 API 来完成相同的工作。

请注意,向 scale CLI 命令传递参数来更改活动或最大 VU 的数量将仅影响外部控制型执行器。

Options

externally-controlled 执行器没有优雅停止功能.

除此之外,此执行器具有所有 通用配置选项,以及这些特定选项

选项类型描述默认值
duration(必需)字符串总测试持续时间。-
vus整数并发运行的 VU 数量。-
maxVUs整数测试运行期间允许的最大 VU 数量。-

何时使用

如果您想在测试运行时控制 VU 数量。

重要提示:这是唯一不支持 k6 cloud 的执行器,它只能在本地与 k6 run 一起使用。

示例

在此示例中,我们将执行一个可在运行时控制的测试,从 10 个 VU 开始,最多 50 个,总持续时间为 10 分钟。

JavaScript
import http from 'k6/http';

export const options = {
  discardResponseBodies: true,
  scenarios: {
    contacts: {
      executor: 'externally-controlled',
      vus: 10,
      maxVUs: 50,
      duration: '10m',
    },
  },
};

export default function () {
  http.get('https://test.k6.io/contacts.php');
}

测试开始后,可以使用 pauseresumescale CLI 命令进行外部控制。