Gatling 在场景之间存储变量

Gatling Storing variables between scenarios

我正在使用 Gatling,并且 运行 遇到了实施集成测试的问题。我运行ning的测试有两部分(scenarios):

第一部分是一个简单的 GET 请求,用于验证预期的服务器响应。在此步骤中,它 returns 表单的配置 ID 以及表单的其他属性。

在下一步中,我将点击 PUT 路由,它会更新此表单配置的各种属性,以便通过应用程序的后端测试此路由和其他功能。

这些步骤的问题在于,在 运行 执行第二步之后,如果在该配置下保存了任何表单,出于安全目的它将克隆一个副本并更改 ID。长话短说,相同的 ID 不会在测试之间持续存在。

我的问题是:在 Gatling 中有没有一种方法可以 运行 SQL 查询来获取值并存储它们然后传递它们?或者有没有办法存储 GET 方法中的变量并将其传递到第二种情况的 PUT 方法中。我知道有 Gatling 的 .saveAs() 方法,但我相信这个功能的范围只有 scenario.

请通知我进一步的说明和细节;提前致谢。

这个答案:https://groups.google.com/forum/#!topic/gatling/bfpKd_9d6gk 可能可以用来处理您的用例。

Google group link 仅向您展示了如何在不同的用户会话之间共享(&缓存)数据。

如果您正在寻找 "scenarios" 而不是 "user sessions" 之间的共享数据,您应该查看 Peter 的回答:

这是我今天在 Internet 上能找到的唯一真正向您展示如何在 Gatling 中的场景之间共享数据的信息。

恕我直言,注意“// 在这里设置”注释行非常重要。这是在场景之间共享数据的秘密。如果不首先设置会话属性或在其他情况下直接访问 "CreateId" 将无法工作。