如何检查POSTMAN中是不是存在对象?
Posted
技术标签:
【中文标题】如何检查POSTMAN中是不是存在对象?【英文标题】:How to check if an object exist in POSTMAN?如何检查POSTMAN中是否存在对象? 【发布时间】:2017-10-13 21:50:30 【问题描述】:我想知道如何测试对象是否存在。 例如,我的 API 返回这些内容:
"data": [
"id": 1,
"name": "Abu Dhabi",
"locale": "AE",
"rentWayCountryId": 242,
"stations": [
"id": 2,
"rentWayName": "ABU DHABI AIRPORT",
"rentWayStationId": "IAEAUH1",
"bindExtrasToStationToExtraCategory": []
]
,
我想检查 data.id 是否存在。
我在邮递员中使用了测试选项,我这样做了:
var jsonData = JSON.parse(responseBody);
tests["Name value OK"] = jsonData.data.id === "1";
你能告诉我只有当数据存在时我应该使用哪个条件来验证?
非常感谢!!
【问题讨论】:
【参考方案1】:这是一个正确的 Postman 测试:
const jsonData = pm.response.json();
pm.test('Has data', function()
pm.expect(jsonData).to.have.property('data');
);
根据响应中是否存在data
属性,以上将通过或失败您的邮递员请求。
【讨论】:
【参考方案2】:检查对象是否存在,相当于检查对象是否为空。
if(object)//runs if object is not null
【讨论】:
【参考方案3】:感谢您的想法! 我试过这个:
var jsonData = JSON.parse(responseBody);
tests["idExist"] = jsonData.data.id !== null ;
它奏效了。 非常感谢
【讨论】:
您好,欢迎来到 *** Mehdy :) 如果您找到回答您问题的答案,我们建议您通过单击旁边的勾选选项“接受”它。这向其他开发人员快速显示了正确的解决方案。它还可以帮助您和回答者赢得少量声誉(您名字旁边的点数)。【参考方案4】:如果您需要检查是否设置了变量,请使用此解决方案:
tests["idExist"] = pm.globals.get('dealerId') !== undefined;
【讨论】:
以上是关于如何检查POSTMAN中是不是存在对象?的主要内容,如果未能解决你的问题,请参考以下文章