[英]Configure gatling base url from initial http request
我对 Scala 和加特林完全陌生,请原谅基本问题!
我想创建一个 http 协议,其baseUrl
由初始 http 请求的结果指定。 或者换句话说:
endpoint
http.baseUrl()
我可以在每个场景中手动执行此操作,但这很快就会变得乏味(并且不必要地重复)。 我想找到一个解决方案,我可以在测试运行开始时执行一次此设置。
我的直觉是 go 是这样的:
object Environment {
val config = "https://example.com/config.json"
}
val httpProtocol = http("config")
.get(Environment.config)
.check(
jsonPath("$.endpoint").saveAs("endpoint")
)
.baseUrl("${endpoint}")
// ... and then later on
setUp(
// scenario.inject()…
).protocols(httpProtocol)
...但这不会编译。
非常感谢您的帮助。
你的提议是行不通的。
.protocols 需要一个 HttpProtocolBuilder (记录在 gatling 站点上),而您正在尝试传递一个 HttpRequestBuilder
此外,HttpProtocolBuilder 的 baseUrl 参数只接受一个字符串,因此您将无法将加特林 session 值传递给它。
我能想到的唯一方法是在“之前”块中发出返回基本 url 的请求,但是您将无法使用加特林 dsl 构造来发出该请求:您必须这样做它与原始 scala
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.