每个 Gatling 请求中的唯一 ID

阿鲁玛
  def getrandomNo(): String = {
    return ((rnd.nextDouble() * (1000000.0)).toLong).toString
  }

scenario("scn getart).during(test_duration minutes) {
    exec(actionBuilder = http("req getart")
    .post(apiurl)
    .header("txn-id", getrandomNo()+"_getart")
    .body(apibody)
}

在上面的代码示例中,尝试为每个请求生成唯一的 txn-id。但是,观察到它正在重复使用相同的数字导致重复。此外,我尝试使用以下内容根据当前时间生成,当在 1 秒内触发超过 1 个请求时,它仍然会导致重复。

def getTxnId(): String = {
    "PerfTest_" + System.currentTimeMillis().toString+ getrandomNo()
  }

无论并发性如何,是否有任何替代解决方案可以为每个请求生成唯一 ID?

提前致谢。

斯蒂芬·兰德尔

这不起作用,因为您getrandomNo在构建模拟时只被调用一次。如果您不想传递值,但希望在每次执行时执行某段代码,则必须传递一个函数

.header("txn-id", session => getrandomNo()+"_getart")

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章