Karate 空手道API:如何断言一个json/response节点值,它为不同的数据返回null或数组对象

Karate 空手道API:如何断言一个json/response节点值,它为不同的数据返回null或数组对象,karate,Karate,我有一个请求,它以两种可能的方式返回响应节点(itemCanBe)值,具体取决于“itemNum”。我如何断言这一点?下面的尝试不起作用 * match res..itemCanBe == null || res..itemCanBe[*] contains ['Colgate'] 项可以返回null { "itemDetails": { "1234": { "itemNum": "1234"

我有一个请求,它以两种可能的方式返回响应节点(itemCanBe)值,具体取决于“itemNum”。我如何断言这一点?下面的尝试不起作用

* match res..itemCanBe == null || res..itemCanBe[*] contains ['Colgate']
项可以返回null

{
"itemDetails": {
    "1234": {
        "itemNum": "1234",
        "itemCanBe": null
    }
  }
}
项可以返回数组

{
"itemDetails": {
    "4567": {
        "itemNum": "4567",
        "itemCanBe": [
            "Colgate",
            "Sensodine"
        ]
    }
}

}

这实际上是可行的:

* def temp = get[0] response..itemCanBe
* match temp == '##[]'

另请参阅:

这将实际起作用:

* def temp = get[0] response..itemCanBe
* match temp == '##[]'

另请参阅:

有关详细信息,请参阅此线程:
这应该足以解决您的问题。

有关详细信息,请参阅此线程: 这应该足以解决您的问题