加特林-从JSON数组响应中提取数据

Ali*_*ino 2 arrays json jsonpath gatling

如果我有这种回应:

{
  "A": 2,
  "B": [
    {
      "CCC": "abcde",
      "DDD": {
        "EEE": 11,
        "FFF": 22
      }
    },
    {
      "CCC": "fghij",
      "DDD": {
        "EEE": 111,
        "FFF": 222
    }
   }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我怎么能得到所有列表或其他 CCC值?

如果我使用:

.check(jsonPath("$..CCC").saveAs("VARIABLE"))
Run Code Online (Sandbox Code Playgroud)

我只得到第一个CCC(“ abcde”)。通过CCC [*]进行操作会引发错误。

Pra*_*een 5

我认为,您应该在check语句中添加findAll。

例如:

.check(jsonPath("$..[*].CCC").findAll.saveAs("VARIABLE"))
Run Code Online (Sandbox Code Playgroud)

并请定义您的错误。

欢呼声,Peekay

  • Alichino,您好:首先,findAll收集所有值。无论那里有多少个值。其次,您可以遵循“ $ {abc(0)},$ {abc(1)},$ {abc(2)},...”顺序地传递值。我认为,您已经找到了答案。欢呼声,Peekay (2认同)