【发布时间】:2018-09-16 02:20:36
【问题描述】:
如果 key:value 存在,我想检查我的 JSON 响应 Array。 如果找到 key:value 我想要退出循环并获得测试结果。 你能支持我怎么做吗?
例如我有以下回应:
[
{
"persID": "personID_1",
"vip": false,
"account": {
"contactName": "value1",
},
"premium": {
"Name": "value2",
"Director": "value3",
"company": "value7",
"homePage": "value6",
"address": {
"country": "value8",
"city": "value9"
},
"photo": value10
}
},
{
"persID": "personID_2",
"vip": false,
"account": {
"contactName": "value11",
},
"premium": {
"Name": "value12",
"Director": "value13",
"company": "value17",
"homePage": "value16",
"address": {
"country": "value18",
"city": "value19"
},
"photo": value110
}
},
.....
.....// dynamic response can be "n" elements!!!!
]
我想检查这个数组中是否存在 ("persID": "personID_3") 的键值。 (例如,对于 persID_3,结果应该是失败,而 persID_2 通过)
我尝试了以下但没有结果:
var jsonArray = pm.response.json();
var persID = "persID_3";
pm.test("2. tets check if persdID exist in array", function () {
var i=0;
for(i; i<jsonArray.length;i++){
pm.expect(jsonArray).to.have.property(jsonArray[i].persID, persID);
// pm.expect(jsonArray[i]).to.have.property(jsonArray[i].persID, persID);
}
});
也试过了 var jsonArray = JSON.parse(responseBody); 和 pm.expect(jsonArray[i]).to.have.property(jsonArray[i].persID, persID);
但没有结果
感谢您的支持。
【问题讨论】:
标签: postman