放心验证嵌套响应体

Validate nested response body rest assured

我知道有很多关于放心验证的信息,但不幸的是我无法找到我的问题的确切解决方案。

我正在训练以验证以下 JSON 的响应:

{
"A":[
  {
     "B":[
        {
           "C":"c",
           "D":"d"
        }
     ],
     "E":[
        {
           "F":[
              {
                 "G":"g1"   
              }
           ]
        },
        {
           "F":[
              {
                 "G":"g2"
              }
           ],
        },
        {
           "F":[]
        }
     ]
  }
],
"H": "h"
}

使用以下代码:

 response.body("A.E.F.G", hasItems(expectedValues.get(G).toArray(new String[0])))

expectedValues.get(G) return g1 和 g2 的列表。

我得到的错误是:

JSON path A.E.F.G doesn't match.
Expected: an array containing ["g1", "g2"]
Actual: [[[g1], [g2], []]]

我该如何完成?

即解决问题:

response.body("A.E.F.G.flatten()", hasItems(expectedValues.get(G).toArray(new String[0])))