如何检查POSTMAN中是否存在对象?

时间:2017-05-15 07:42:57

标签: json postman

我想知道如何测试对象是否存在。 例如,我的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";

你能否告诉我,只有在数据存在的情况下才能使用巫婆条件。

非常感谢你!

4 个答案:

答案 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;