Как сравнить CSV со значениями ответа JSON Почтальона? - PullRequest
1 голос
/ 07 мая 2019

Как сравнить CSV со значениями ответа JSON Почтальона? Я хочу сравнить значения CSV со значением ответа почтальона.

Например:

Мой CSV:

Итерация, Город, Рамэн

1, "Ванкувер", 100

2, "Сан-Франциско", 84

Моя конечная точка: ссылка

Мои тесты:

pm.test("Your test name", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.args.ramen).to.eql(pm.iterationData.get("Ramen"));
});

Примечание: я получаю файлы с нижеуказанного URL Только тесты мои. ссылка

На данный момент я получаю ошибку ниже:

Ваше тестовое имя | Ошибка Assertion: ожидаемое значение '84' ​​будет глубоко равно 84

Ответы [ 2 ]

0 голосов
/ 07 мая 2019

Ожидаемое значение для "Ramen" из вашего файла данных CSV: 84 типа Число .Но ваша служба возвращает свойство "ramen" со значением "84" типа String .

Ваш тест не пройден по уважительной причине.

Конечно, вы можете изменить свои тестовые данные путем приведения.Но это не очень хороший тест, потому что вы меняете ожидаемые тестовые данные во время выполнения, чтобы они стали зелеными.

Если ответ в порядке, то тестовые данные не: Вам нужно сохранить значения "Ramen" в CSV в виде строки:

1,"Vancouver","100"
2,"San Francisco","84"
and so on. 

Если тестовые данные в порядке,Ответ не: Вы должны исправить неправильное поведение Servie.

0 голосов
/ 07 мая 2019

Попробуйте преобразовать целочисленное значение csv в строку и использовать to.equal вместо из to.eql (что эквивалентно to.deep.equal):

pm.expect(jsonData.args.ramen).to.equal(new String(pm.iterationData.get("Ramen")));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...