ТЕСТ-КЕЙСЫ API В POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

API TEST CASES В POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

Содержание

В предыдущих статьях Postman Tutorial мы рассмотрели «Как запускать коллекции с помощью Newman».

В этой статье «Тестовые примеры API в Postman с использованием JavaScript» я буду демонстрируя, как вы можете реализовать эту концепцию и получить четкое представление об этом.

С помощью Postman мы можем добавлять сценарии к нашему запросу и писать тесты.

Код, добавленный в Pre- вкладка “Сценарий запроса” будет выполняться перед отправкой запроса, а код будет добавлен на вкладке Тесты .будет выполняться после получения ответа.

API TEST CASES IN POSTMAN USING JAVASCRIPT

Мы используем скрипты предварительного запроса для всех действий, которые необходимо выполнить перед выполнением запроса, таких как установка переменных, очистка переменных или устанавливаем переменную среды в среде.

Мы пишем тестовые скриптыпроверить обработку ошибок API, отправив запрос с неполными данными. С помощью тестовых сценариев мы можем использовать динамические переменные и выполнять тестовые утверждения для данных ответов.

API TEST CASES IN POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

Postman имеет API PM (известный как pm.*API), который является мощным способом написания тестов на вкладке “Тест”.

pm.test():

Функция pm.test() используется для написания тестовых спецификаций. Он принимает 2 параметра: имя теста (в виде строки) и функцию для возврата логического значения. Его можно использовать только на вкладке “Тесты” после отправки основного запроса Postman.

Пример:

12345

pm.test(“ответ должен быть в порядке для обработки”, function () {pm.response.to.not.be .error;pm.response.to.have.jsonBody(“”);pm.response.to.not.have.jsonBody(“error”);});

pm.expect ():

Функция утверждения pm.expect() упрощает написание удобочитаемых тестов, и мы можем иметь дело с утверждениями данных из ответа или переменных.

Пример:

123

pm.test(“рабочая среда”, function () {pm. ожидаем(pm.environment.get(“env”)).to.equal(“production”);});

pm.response.to.be.* :

Объект pm.resonse.to.be предоставляет тесты для типов статуса ответа и вариантов текста.

Пример:

123

pm.test(“ответ в порядке”, function () {pm.response.to.have.status(200);});

Тестовые случаи:< /h3>

Нам нужно добавить любое из утверждений в обратный вызов pm.test.

Пример:

1234

pm.test(“Имя вашего теста”, function () {var jsonData = pm.response.json();pm.expect(jsonData.value).to.eql(100);});

1) Код состояния:

1.1 Убедитесь, что код состояния равен 200:

123

pm.test(“Несколько кодов состояния”, function() {pm.expect(pm.response.code).to.be.oneOf([201,202]);});

API TEST CASES IN POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

2) Время ответа:

2.1 Время отклика менее 100 мс:

123

pm.test(“время ответа”, function() {pm.expect(pm.response.responseTime).to.be.below(9);});

API TEST CASES IN POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

3) Заголовки:

3.1 Существует заголовок:

123

pm. test(“заголовок существует”, function() {pm.response.to.have.header(Content-Type);});

3.2 Заголовок имеет значение:

123

pm.test(“заголовок имеет значение”, function() {pm.expect(pm.response.headers.get('Content-Type')).to .eql('приложение/json');});

API TEST CASES В POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

< strong>4) Cookies:

4.1 Cookie существует:

123

pm.test(“Cookie существует”, function() {pm.expect(pm.cookies.has('sessionId')).to.be.true;});

4.2 Значение файла cookie:

< textarea wrap=soft class="crayon-plain print-no" data-settings=dblclick только для чтения стиль=-moz-tab-size:4;-o-tab-size:4;-webkit-tab-size:4;tab -size:4;размер шрифта:12px!важно;высота строки:15px!важно>pm.test(“Файл cookie имеет значение”, function() { pm.expect(pm.cookies.get('sessionId')).to.eql('ad3se3ss8sg7sg3'); });< /textarea>

123

pm.test(“Cookie имеет значение», function() {pm.expect(pm.cookies.get('sessionId')).to.eql('ad3se3ss8sg7sg3');});

API TEST CASES В POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

< strong>5) Тело (любой тип контента/HTML-ответы):

5.1 Точное соответствие тела:

1234

pm.test(“Match body”, function() {pm.response.to.have.body(“ОК”);pm.response.to.have.body('{“success”=true}');});

5.2 Частичное соответствие тела/тело содержит:

123

pm.test(“Частичное совпадение тела” », function() {pm.expect(pm.response.text()).to.include('Заказ размещен.');});

Тестовые примеры API в POSTMAN с использованием JAVASCRIPT

6) Тело (ответы JSON):

Синтаксический анализ тела (необходимо для всех утверждений)

const response = pm.response.json();

6.1 Простая проверка значения:

12345

pm.test(“Проверить значение”, function() {const response = pm.response.json();pm.expect(response.age).to.eql(30);pm. expect(response.name).to.eql('John);});

6.2 Проверка вложенных значений:

1234

pm.test(“Проверить вложенное значение”, function() {const response = pm.response.json();pm.expect(response.products[0].category).to.eql('Book');}) ;

API TEST CASES В POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT< /p>

7) Тело (ответы XML):

Преобразование тела XML в JSON (необходимо для всех утверждений):

const response = xml2Json(responseBody);

7.1 Простая проверка значения:

12345

pm.test(“Проверить значение”, function() {const response = xml2Json(responseBody);pm.expect(response.age).to.eql(30);pm.expect(response.name).to.eql( 'John);});

7.2 Проверка вложенных значений:

1234

pm. test(“Проверить значение”, function() {const response = xml2Json(responseBody);pm.expect(response.products.0.category).to.eql('Book');});

API ТЕСТОВЫЕ ПРИМЕРЫ В POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

Не xt:

Узнайте «Создание случайных/динамических данных в запросах» в следующем руководстве.
TAG: qa

От QA genius

Adblock
detector