Утверждение значений в ответе JSON с помощью тестов в Postman

Тело моего ответа JSON выглядит так:

[
  {
    "_time": "1499996827804",
    "properties": {
      "length": "80",
      "width": "4500"
    }
  }
]

Я использую Postman для написания тестов, чтобы утверждать значение длины и ширины и _time.

Я написал :

var data = JSON.parse(responseBody);

tests["Check length value"] = data.length === "80";

Но это не удается. Кто-нибудь может помочь?


person rubyUser    schedule 21.07.2017    source источник


Ответы (2)


Если ваш JSON выглядит так:

[ { "_time": "1499996827804", "properties": { "length": "80", "width": "4500" } } ]

Затем вам нужно исправить data.length === "80" часть вашего теста.

Во-первых, ваш JSON - это массив, поэтому вам нужно выбрать data[0], чтобы получить первый элемент в ответе (это { "_time": "1499996827804", "properties": { "length": "80", "width": "4500" } }). Тогда похоже, что вы пытаетесь проверить length часть ответа, которая находится под объектом properties. Теперь ваш селектор должен выглядеть так: data[0].properties.

И, наконец, чтобы получить доступ к части length, добавьте .length в конец вашего селектора: data[0].properties.length.

Сложите все вместе, и у вас должно получиться:

tests["Check length value"] = data[0].properties.length === "80";

Надеюсь, поможет!

person Cody Reichert    schedule 21.07.2017

Ваши данные возвращаются в массиве, поэтому вам нужно получить первый элемент массива. Также длина является второстепенным свойством объекта «свойства». Попробуй это:

tests["Check length value"] = data[0].properties.length === "80";
person bhspencer    schedule 21.07.2017