如何从下面的响应中检索 partNumbers。在下面的回复中
"10000061","10000062","10000063"
本质上是动态的。我必须将这些零件编号与数据表零件编号匹配。(在响应中可能有 10 个以上的零件编号(基于输入),我必须验证它们。)
{ "added": true, "lineItems": { "1111111": { "itemCore": { "partNumber":
"10000061" } }, "222222": { "itemCore": { "partNumber": "10000061" } },
"3333333": { "itemCore": { "partNumber": "10000063" } } } }
下面试过
def partNum= get[0] response..itemCore.partNumber[*] but getting empty array.
def partNum= get[0] response..itemCore.partNumber but getting empty value.
我下面的第二种方法也给了我空值。
* def keys = function(obj){ return response.lineItems.keySet() }
* json dynamicValue= keys(response)
* print 'dynamic value '+dynamicValue
* def first = dynamicValue[0]
* print response.lineItems.dynamicValue[0].itemCore.partNumber
* print response.lineItems.first.itemCore.partNumber
最佳答案
为了检索特定键的数据,您可以在 jsonPath 中使用深度扫描运算符,
* def partNumbers = karate.jsonPath(response,"$..partNumber")