API — сокращение от Application Programming Interface (программный интерфейс приложения). API — набор правил, протоколов и инструментов для взаимодействия между приложениями. Говоря простым языком, API — интерфейс, который определяет, как одна программа должна взаимодействовать с другой программой. Как правило, представляет собой набор функций, которые могут быть вызваны другой программой.
Postman — приложение для работы с API. Это популярный API клиент, который позволяет разрабатывать, тестировать и документировать API.
Как тестировщики, с помощью Postman мы можем отсылать HTTP/s запросы к сервисам и получать от них ответы. С помощью такого подхода можно протестировать бэкенд сервисы и убедиться, что они корректно работают.
Основные сущности Postman: запросы, коллекции и окружения
- Запросы
- Коллекции
- Окружения
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 - Ошибка клиента - Указание на ошибку на стороне клиента, из-за которой запрос нельзя выполнить
+ в статье есть примеры по которым можно попрактиковаться в 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/
Комментариев нет:
Отправить комментарий