пятница, 4 февраля 2022 г.

Postman


API — сокращение от Application Programming Interface (программный интерфейс приложения). API — набор правил, протоколов и инструментов для взаимодействия между приложениями. Говоря простым языком, API — интерфейс, который определяет, как одна программа должна взаимодействовать с другой программой. Как правило, представляет собой набор функций, которые могут быть вызваны другой программой.

Postman — приложение для работы с API. Это популярный API клиент, который позволяет разрабатывать, тестировать и документировать API.

Как тестировщики, с помощью Postman мы можем отсылать HTTP/s запросы к сервисам и получать от них ответы. С помощью такого подхода можно протестировать бэкенд сервисы и убедиться, что они корректно работают.

Основные сущности Postman: запросы, коллекции и окружения
  1. Запросы
  2. Коллекции
  3. Окружения
1. Запросы (Requests)
Запрос представляет собой комбинацию URL, хедеров и Body (тела запроса). Postman позволяет сохранять запросы и использовать их в будущем там, где вам нужно.

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

Для каждого API-запроса нужно выбрать HTTP-method.

HTTP — HyperText Transfer Protocol (протокол передачи гипертекста). Протокол используется для общения клиента и сервера. Клиентом, к примеру, может быть браузер (в нашей статье в качестве клиента используется Postman).

После отправки клиентом HTTP-запроса, сервер возвращает ответ. Ответ сервера содержит метаданные о статусе и запрашиваемый контент.

Наиболее распространенные типы HTTP-запросов:
  • GET-запросы используются для получения данных от API.
  • POST-запросы используются для отправки новых данных API.
  • PUT-запросы используются для обновления уже существующих данных.
  • PATCH-запросы (как и PUT) используются для обновления уже существующих данных. Разница в том, что с помощью PATCH запросов можно обновить несколько записей за раз.
  • DELETE-запросы используются для удаления существующих данных.
2. Коллекции (Collections)
Коллекции представляют собой группы запросов. Вы можете думать о коллекциях как о папках, в которых лежат запросы.

Коллекция может содержать любое число запросов. Запустить выполнение коллекции можно двумя способами:
  • с помощью Collection Runner
  • c помощью Newman
3. Окружение (Environments)
Окружения в Postman позволяют запускать запросы и коллекции, используя разные наборы данных. Например, мы можем создавать разные окружения в Postman для Dev, QA и Production серверов. В каждом из окружений будут свои собственные настройки: например, URL, auth token-ы и пароли, API-ключи и т.п. Окружения представляют собой наборы пар «ключ-значение».

Тестирование GET-запросов
Повторимся, GET-запросы используются для получения данных с сервера. GET-запросы не меняют состояние данных на сервере (не добавляют, не удаляют и не изменяют данные).

Тестирование POST-запросов
POST-запросы используются для отправки новых данных на сервер. Например добавить нового пользователя.

Примечание: во время тестирования, для каждого запроса проверяйте возвращаемый результат, код ответа сервера и время ответа сервера. И не забывайте про негативные тесты!

Параметризация запросов
Параметризация — одна из самых полезных особенностей Postman.

Часто необходимо выполнить один и тот же запрос на разных наборах данных. С помощью параметризации, можно использовать переменные при выполнении запросов.

В Postman, параметры создаются с помощью двойных скобок: {{test}}.

Создание тестов в Postman
Тесты в Postman позволяют убедиться, что API работает так, как этого от него ожидают.

В Postman можно протестировать запросы по каждому методу: его нужно выбрать на вкладке запроса. После отправки запроса тестировщик получает ответ в виде кода статуса HTTP. Всего таких статусов 40 в пяти категориях; каждый код помогает понять, правильно ли работает API.

1xx - Информация - Информирование о статусе передачи данных

2xx - Успех - Запрос выполнен успешно

3xx - Перенаправление - Запрос может быть успешно выполнен, но по другому URL

4xx - Ошибка клиента - Указание на ошибку на стороне клиента, из-за которой запрос нельзя выполнить

5xx - Ошибка сервера - Указание на ошибку на стороне сервера, из-за которой он не может обработать запрос

+ в статье есть примеры по которым можно попрактиковаться в Postman 

Источник:  https://blog.skillfactory.ru/glossary/postman/

Postman — это HTTP-клиент для тестирования API. HTTP-клиенты тестируют отправку запросов с клиента на сервер и получение ответа от сервера.

API (Application Programming Interface) — это интерфейс для обмена данными с сервера между двумя приложениями или компонентами ПО. Тестировщикам Postman помогает в проектировании дизайна API и создании mock-серверов (имитаторов работы приложения). Например, с помощью Postman можно протестировать, как API регистрирует нового пользователя приложения, как добавляет и удаляет данные о нем на сервере.

Для работы с серверами программа использует протокол HTTP. Тестировщик отправляет тестовые запросы от клиента на сервер и получает ответ.

Методы Postman

Чаще всего в работе API используется архитектура RESTful. В этой архитектуре есть четыре стандартных метода запросов к серверам по HTTP:

POST — создание объекта и отправка данных на сервер;
GET — получение информации с сервера;
PUT — обновление объекта;
DELETE — удаление объекта.

Использование Postman
С помощью Postman тестировщик может:
  • составлять и отправлять HTTP-запросы к API;
  • создавать коллекции (набор последовательных запросов) и папки запросов для сокращения времени тестирования;
  • менять параметры запросов (например ключи авторизации и URL);
  • менять окружения для запросов (например на тестовом стенде, локально или на сервере);
  • добавлять при вызове API контрольные точки (фиксацию момента передачи данных);
  • проводить автоматизированное тестирование API по коллекции запросов с помощью Collection Runner.
В Postman есть инструмент Collection Runner. Он позволяет одновременно выполнять все запросы из коллекции или папки с нужным количеством итераций и в нужном порядке. После выполнения всех запросов Collection Runner выдает отчет с пометками об успешности запросов и кодами статуса.

Для автоматизированных тестах к коллекциям, папкам и запросам можно применять скрипты на JavaScript. Например, с помощью скриптов можно использовать результат выполнения одного запроса как условия для другого.




API — это Application Programming Interface, или программный интерфейс приложения, с помощью которого одна программа может взаимодействовать с другой. API позволяет слать информацию напрямую из одной программы в другую, минуя интерфейс взаимодействия с пользователем. 

Как это работает? Представьте, что вы сидите в ресторане, выбираете блюдо в меню. Подходит официант, и вы делаете заказ. Официант передаёт ваш заказ на кухню, там происходит магия, и через некоторое время перед вами появляется готовое блюдо. API работает по такому же принципу — принимает ваш запрос, передаёт информацию системе, обрабатывает её и возвращает ответ. 

Какие бывают? API может быть внутренним, частным — когда программные компоненты связаны между собой и используются внутри системы. А может быть открытым, публичным — в таком случае он позволяет внешним пользователям или другим программам получать информацию, которую можно интегрировать в свои приложения.

Чтобы программам общаться между собой, их API нужно построить по единому стандарту. Одним из них является REST — стандарт архитектуры взаимодействия приложений и сайтов, использующий протокол HTTP. Особенность REST в том, что сервер не запоминает состояние пользователя между запросами. Иными словами, идентификация пользователя (авторизационный токен) и все параметры выполнения операции передаются в каждом запросе.

Как тестировать API?

Тестирование API проводят, основываясь на бизнес-логике программного продукта. Тестирование API относится к интеграционному тестированию, а значит в ходе него можно отловить ошибки взаимодействия между модулями системы или между системами. Для тестирования используют специальные инструменты, где можно отправить входные данные в запросе и проверить точность выходных данных. Одним из таких инструментов как раз и является Postman. Вот что он умеет:
  • Составлять и отправлять запросы;
  • Сохранять запросы в папки и коллекции;
  • Параметризовать запросы;
  • Добавлять к вызову API контрольные точки;
  • Создавать разные окружения для одних и тех же запросов;
  • Запускать коллекции с помощью Collection Runner и использовать их как автоматизированные тесты.
далее ещё один "гайд"

О написании тестовых скриптов в Postman https://habr.com/ru/company/kolesa/blog/351250/

Комментариев нет:

Отправить комментарий