2

是否有可能在 k6 中的 VU 线程之间共享一个全局计数器?例如,对于电子邮件地址必须唯一的用户注册,我正在使用"user" + i + "@example.com"...

当前使用全局变量:

let i = 1

在全局命名空间中。单个 VU 可以正常工作,但是 2 个 VU 会导致 50% 的请求失败,等等。我假设每个 VU 都运行自己的 JS。是否有对 JS 运行时可用的线程(goroutine?)编号/id 的引用?

4

1 回答 1

2

您可以使用数字计数器__VU__ITER.

__VU:这个值是为每个新的 VU 递增分配的。如果 VU 被终止(例如,作为减速操作的一部分)并且测试协调器再次启动相同的 VU,则 VU 将具有相同的先前值。

__ITER:给定 VU 的当前迭代次数。

于 2017-11-07T13:43:20.267 回答