从另一个场景访问会话变量

Access session variable from another scenario

我陷入了这种情况。例如我有 3 个场景 A、B 和 C。scn A 将为 B 和 C 生成所需的值。因此 scn B 和 C 将并行执行,但在 scn A 完成之后。

我正在使用 Gatling 3.4 中引入的 andThen() 函数,但我似乎无法从 B 和 C 访问 scn A 的会话变量。

setUp(
A.inject(rampUsers(numReporters) during userCountRampUpTime)
  .andThen(
    B.inject(rampUsers(numBrowsers) during userCountRampUpTime),
    C.inject(rampUsers(numSearchers) during userCountRampUpTime)
  )

) .protocols(http协议) 断言( forAll.successfulRequests.percent.gt(95), forAll.responseTime.max.lt(响应时间) )

会话是与给定虚拟用户关联的内存space。场景执行不同的虚拟用户集。您的实施不可能奏效。

那么,您已经描述了您的实际问题,只是您的实现是暂定的。

如果您尝试在场景之间共享数据,请使用 ConcurrentHashmap 之类的东西。