我正在使用Rest-Assured进行REST API测试自动化。对于一个API,我得到一个类似下面的数组作为响应。从该数据数组中,我需要检查任何数组项是否具有值为“ Sss / 12345637/58”的任何属性“ requestRefNo”:]
{ "data": [ { "requestRefNo": "Sss/12345637/88", "requestRefType": "AST", "requestedByCode": "OWR", "requestedByDesc": "Asset Owner", "requestedDate": "12/06/2016", "requestTypeRefNo": "Sss/12345637/SWT/73" }, { "requestRefNo": "Sss/12345637/58", "requestRefType": "AST", "requestedByCode": "OWR", "requestedByDesc": "Asset Owner", "requestedDate": "10/06/2016", "requestTypeRefNo": "Sss/12345637/SWT/43" }, .... ], "links": { "linkDetails": [ ], "empty": true }, "errors": { "empty": true, "errorDetails": [ ] } }
我尝试过这样:
.assertThat().statusCode(200).body("data.requestRefNo", IsArrayContaining.hasItemInArray("Sss/12345637/58"))))
但是它给出了以下错误:
java.lang.AssertionError: 1 expectation failed. JSON path data.requestRefNo doesn't match. Expected: an array containing "Sss/12345637/58" Actual: [Sss/12345637/58, Sss/12345637/88]
谁能给我任何想法吗?
谢谢,Surodip
我正在使用Rest-Assured进行REST API测试自动化。对于一个API,我得到一个类似下面的数组作为响应。从该数据数组中,我需要检查任何数组项是否具有任何属性“ ...
得到了一个非常简单的答案,之前错过了: