gatling - 生成唯一的执行标识

gatling - generate unique id of execution

当我通过使用 post 方法发送基于 json 的 ElFileBody 创建一些对象时,我有一个简单的场景。我想向该文件传递一些唯一的 ID,以便在执行场景后使用此测试创建的所有对象都将具有完全相同的 ID。

我正在尝试

exec(session ->
  session.set("testExecutionId", java.util.UUID.randomUUID.toString)
);

但这每隔 运行 执行一次,并且每次执行都会获得自己的 testExecutionId。 谁能告诉我是否可以做这样的事情,或者也许已经有这样的东西开箱即用?

首先请使用 feed 而不是 execsession.set - 这是更正确的方法。
您的代码中的细微差别是每次都会调用 java.util.UUID.randomUUID.toString 方法。我们可以通过 val 变量初始化 id 来解决这个问题。

val uuid = java.util.UUID.randomUUID.toString

val testExecutionFeeder = Iterator.continually(Map("testExecutionId" -> uuid))

然后添加到您的场景中:

scenario(...)
    .feed(testExecutionFeeder)
    ...