Scala / Gatling:如何附加到foreach中的数组?

时间:2015-02-19 19:20:29

标签: scala foreach gatling

我是Scala / Gatling的新人,所以如果这个问题愚蠢,我会事先道歉。

编写gatling测试,我有一个foreach遍历项目列表,向URL发出请求,并验证响应。

现在,我想从每个响应中获取一个元素,并在会话中创建一个数组以供将来使用。

这里有一些代码:

 foreach("collection","currentItem"){
       exec(
         http(requestName)
         .post([redacted])
         .param([redacted])
         .check(
           regex(""""error":\s*"([^"]*)"""").find.notExists
         )
         .check(
           regex(""""id":\s*"([^"]*)"""").findAll.saveAs([HERE'S WHERE I'M STUCK])
         )
       )
     }

我不想只使用saveAs(" someString"),或者它会被foreach的每次迭代覆盖。我需要的是每个响应中的所有id都要附加到一个数组中,然后我可以将它放入会话中。

我整个上午一直在谷歌上搜索,但是每次其他搜索都会把我带到一个github页面,上面写着"文档已被移动",然后提供一个无处链接。我也没有看到任何相关的stackoverflow帖子。

有人有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您无法直接在支票中执行此操作。您必须在请求之后添加额外的exec步骤,但是在循环内部将从先前存储的累加器的Session获取以及当前迭代中的检查所保存的内容,并推送结果回到会议。