Что такое тестирование API?
Тестирование API — проверка серверных методов напрямую, без интерфейса: тестировщик отправляет запрос с определёнными параметрами и сверяет ответ — данные, структуру, код статуса и время обработки.
Такие проверки быстрее и надёжнее интерфейсных: не нужно ждать загрузки страницы, а тест не ломается от изменения вёрстки. Кроме того, API можно тестировать раньше — ещё до того, как фронтенд будет готов.
Проверяют не только успешный сценарий. Важнее поведение на границах: некорректные данные, отсутствующие поля, чужой токен, несуществующий идентификатор. Ошибки авторизации, найденные на этом уровне, часто оказываются самыми критичными.
Инструменты: Postman для ручных проверок и коллекций, REST Assured в Java, requests в Python — для автотестов.
Связанные термины
API (Application Programming Interface) — это набор правил, по которым одна программа обращается к другой: какие запросы можно отправить, какие параметры передать и в каком виде придёт ответ. API позволяет использовать чужой сервис, ничего не зная о его внутреннем устройстве.
REST APIREST API — самый распространённый стиль построения веб-API, в котором каждый объект системы доступен по своему адресу, а действие над ним задаётся HTTP-методом: GET — получить, POST — создать, PUT — изменить, DELETE — удалить.
Integration TestingИнтеграционное тестирование проверяет, как несколько компонентов работают вместе: приложение и база данных, сервис и внешнее API, два микросервиса между собой. Отдельно каждая часть может быть исправна, а на стыке всё равно возникнет ошибка.
Test AutomationАвтоматизация тестирования — написание программ, которые сами выполняют проверки и сравнивают результат с ожидаемым. Такие тесты запускают при каждом изменении кода, чтобы быстро замечать поломки в уже работающей функциональности.
JSONJSON (JavaScript Object Notation) — текстовый формат обмена данными, в котором информация записывается парами «ключ — значение». Его понимают все языки программирования, и именно в нём чаще всего отвечают современные API.