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

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

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

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

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

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

< p>ТЕСТОВЫЕ СЛУЧАИ API В POSTMAN С ИСПОЛЬЗОВАНИЕМ JAVASCRIPT

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

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

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

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

pm.test():

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

Пример:pm.test("ответ должен быть готов к обработке", function () { pm.response.to.not.be.error; pm.response.to.have.jsonBody("&# 34;); pm.response.to.not.have.jsonBody("error"); });

pm.expect():

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

Пример:

pm. test("производственная среда", function () { pm.expect(pm.environment.get("env")).to.equal("производство&#34 ;); });

pm.response.to.be.* :

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

Пример:pm.test("response is ok", function () { pm.response.to.have.status(200); });

Тестовые примеры:

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

Пример:

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

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

1.1 Проверьте, равен ли код состояния 200:

pm.test("Код состояния: 200", function () { pm.response.to.have.status(200); });

1.2 Проверка нескольких кодов состояния:

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

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

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

2.1 Время ответа менее 100 мс:

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

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

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

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

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

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

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

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

4) Файлы cookie:

4.1 Файлы cookie существуют:

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

4.2 Файл cookie имеет значение:

pm.test(“Файл cookie имеет значение”, function() { pm.expect(pm.cookies.get('sessionId&#39) ;)).to.eql('ad3se3ss8sg7sg3'); });

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

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

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

pm.test(“Сопоставить тело”, function() { pm.response.to.have.body("OK"); pm.response.to.have.body('{&# 34;успех"=true}'); });

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

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

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

6) Текст (ответы в формате JSON):

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

const response = pm.response.json();

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

pm.test(“ Проверить значение», function() { const response = pm.response.json(); pm.expect(response.age).to.eql(30); pm.expect(response.name).to.eql(&# 39;Джон); });

6.2 Проверка вложенного значения:

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

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

< strong>7) Тело (ответы в формате XML):

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

const response = xml2Json(responseBody);

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

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

7.2 Проверка вложенного значения:

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

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

Дальнейшие шаги:

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

От QA genius

Adblock
detector