Тестовый скрипт Postman

#javascript #testing #postman

#javascript #тестирование #postman

Вопрос:

Можно ли распечатать результат теста в Postman? У меня есть тест, написанный в тестовых сценариях, и я хочу иметь возможность выводить значение ключа, который не выполняется при запуске теста.

Возможно ли это?

Спасибо.

Ответ №1:

Вы можете использовать эти тесты для отображения предупреждения на вкладке результатов тестирования:

 pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});
  

или

 pm.test("Content does not have IP address.", function(){
    pm.expect(pm.response.text()).to.not.include("IP Address");
});
  

Ответ №2:

Да, вы можете:

 var jsonData = JSON.parse(responseBody);
tests["value is "   jsonData.value] = jsonData.value === 100;
  

Также вы можете распечатать значение из среды, например:

 const value = postman.getEnvironmentVariable('value');
tests["value should be "   value] = jsonData.value === 100;
  

Если вы хотите, вы можете использовать функции ES6 для тестовых сценариев в Postman. Итак, давайте проведем рефакторинг:

 tests[`value is ${jsonData.value}`] = jsonData.value === 100;
  

Ответ №3:

1 для Огужана Киркали.pm.test / pm.expect — это новейший, BDD и классный синтаксис, доступный в Postman для написания тестов.

Я добавляю точность в сообщение Oguzhan, этот синтаксис позволяет определить сообщение в случае сбоя проверки, используя этот синтаксис:

 pm.test("Content does not have IP address.", function(){
    return pm.expect(pm.response.text(), "Content has IP address").to.not.include("IP Address");
});
  

Последняя деталь:
Лучше отправлять «ВОЗВРАТ» в последнем pm.expect() или после всех pm.expect() , иначе вы получите некоторые ошибки, если будете выполнять циклические проверки.
Пример:

 pm.test("Content does not have IP address.", function(){
    pm.expect(pm.response.text()).to.not.include("IP Address");
    return pm.expect(pm.response, "Response status code is not correct").to.have.status(200);
});

//OR

pm.test("Content does not have IP address.", function(){
    pm.expect(pm.response.text()).to.not.include("IP Address");
    pm.expect(pm.response, "Response status code is not correct").to.have.status(200);
    return true;
});