如何在 Gatling 中使用会话中的馈线和值
Posted
技术标签:
【中文标题】如何在 Gatling 中使用会话中的馈线和值【英文标题】:How to use feeder and value from session in Gatling 【发布时间】:2019-12-03 12:13:17 【问题描述】:如何使用馈送器和会话中的值来形成有效负载。这可能吗?
scenario("check")
.feed(ids)
.exec(http("check")
.post("/check")
.header("X-Token", session => session("token").as[String])
.body(StringBody(session =>
"""
|
| "id": $id,
| "subId": $subId
| "addressId": """" + session("token").as[String] + """"
|
""".stripMargin
))
【问题讨论】:
你对那个代码有什么问题吗?看起来不正确的一件事是您应该用引号将标记字符串括起来。我还假设 ID 是数字的,所以其他一切看起来都很好。 @MateuszGruszczynski 是的。感谢您指出。更正了它。只是想知道是否可以同时使用 session + feeder。好像不是。 【参考方案1】:将会话函数传递给 StringBody 意味着 gatling 表达式将不起作用。你可以传入一个嵌入了 EL 变量的字符串。
.body(StringBody("""
|
| "id": $id,
| "subId": $subId
| "addressId": $token
|""".stripMargin
))
【讨论】:
感谢 cmets James。只是想知道是否可以同时使用 session + feeder。好像不是。 @James Warr 你知道 Gatling 3.0 是否有一些变化?我很确定在 2.x 中,EL 表达式是在会话表达式之后评估的,并且可以同时使用两者。 据我所知没有。所有令人讨厌的构建器通常采用 Expression[String] (自动解析 EL 令牌)或会话函数(您必须使用 session("以上是关于如何在 Gatling 中使用会话中的馈线和值的主要内容,如果未能解决你的问题,请参考以下文章
如何在 .Net 应用程序中查看所有存储的会话的 REDIS 键和值?