我正在尝试使用 Gatling 2 运行负载测试。我需要在每个请求上动态生成查询参数之一。
我的场景定义如下:
val scn = scenario("Load Test Scenario")
.exec(
http("Test API")
.post(url)
.body(StringBody("Some XML"))
.queryParam("x", DigestUtils.md5Hex(generateX().getBytes("UTF-8")))
)
def generateX() : String = {
// generate random string and return
}
这只会调用 generateX 一次并在每个请求中使用结果。无论如何都要对每个请求进行 generateX 调用?
任何帮助表示赞赏。
最佳答案
你必须传递一个函数,而不是一个值。见 Gatling documentation about Expression 。
在这里,您可以丢弃 session 输入参数,因为您不使用它,因此您可以简单地编写:
.queryParam("x", _ => DigestUtils.md5Hex(generateX().getBytes("UTF-8")))
关于scala - 每个请求上的 Gatling 2 动态查询参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26863162/