我想知道如何测试对象是否存在。 例如,我的API会返回以下内容:
"data": [
{
"id": 1,
"name": "Abu Dhabi",
"locale": "AE",
"rentWayCountryId": 242,
"stations": [
{
"id": 2,
"rentWayName": "ABU DHABI AIRPORT",
"rentWayStationId": "IAEAUH1",
"bindExtrasToStationToExtraCategory": []
}
]
},
我想检查data.id是否存在。
我在postman中使用了测试选项,我这样做了:
var jsonData = JSON.parse(responseBody);
tests["Name value OK"] = jsonData.data.id === "1";
你能否告诉我,只有在数据存在的情况下才能使用巫婆条件。
非常感谢你!
答案 0 :(得分:36)
这是一个合适的邮递员测试:
const jsonData = pm.response.json();
pm.test('Has data', function() {
pm.expect(jsonData).to.have.property('data');
});
根据回复中data
属性的存在,以上将是邮递员或失败邮递员请求。
答案 1 :(得分:3)
检查对象是否存在等同于检查它是否为空。
if(object){//runs if object is not null}
答案 2 :(得分:0)
感谢您的想法! 我试过这个:
var jsonData = JSON.parse(responseBody);
tests["idExist"] = jsonData.data.id !== null ;
它有效。 非常感谢
答案 3 :(得分:0)
如果您需要检查是否设置了变量,请使用以下解决方案:
tests["idExist"] = pm.globals.get('dealerId') !== undefined;