我正在尝试使用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调用吗?
任何帮助表示感谢。
答案 0 :(得分:7)
您必须传递函数,而不是值。请参阅Gatling documentation about Expression。
在这里,你可以放弃会话输入参数,因为你不能使用它,所以你可以简单地写:
.queryParam("x", _ => DigestUtils.md5Hex(generateX().getBytes("UTF-8")))