(продолжение предыдущего поста)
1. Workflow Testing (тестирование рабочих процессов)
- Суть: проверяет, что последовательность вызовов API работает корректно и позволяет выполнить определённый процесс от начала до конца.
- Цель: убедиться, что цепочка API-запросов взаимодействует правильно, и бизнес-процесс (например, оформление заказа) завершается успешно.
- Пример на изображении: показан сценарий с сообщением «Thanks for your order!» — иллюстрирует, как несколько API-вызовов объединяются для завершения заказа.
2. Performance Testing (тестирование производительности)
- Суть: оценивает скорость, отзывчивость и стабильность работы API в различных условиях нагрузки.
- Цель: выявить «узкие места» — например, задержки при обработке запросов или сбои при высокой нагрузке.
- Пример на изображении: сервер соединён с облаком API пунктирной линией с точками, символизирующими нагрузку — это отражает проверку работы API под нагрузкой.
3. Security Testing (тестирование безопасности)
- Суть: использует методы пенетрационного (атакующего) и фаззинг-тестирования (подачи некорректных данных) для поиска уязвимостей.
- Цель: обнаружить слабые места в API, которые могут быть использованы злоумышленниками (например, SQL-инъекции, неавторизованный доступ).
- Пример на изображении: два силуэта в капюшонах, символизирующие хакеров, пытаются взаимодействовать с облаком API — это подчёркивает аспект безопасности.
4. Data-driven Testing (тестирование, управляемое данными)
- Суть: подаёт на вход API различные наборы и типы данных, чтобы проверить корректность работы в разных сценариях.
- Цель: убедиться, что API правильно обрабатывает крайние случаи (например, пустые значения, некорректные форматы) и не выдаёт ошибок.
- Пример: тестирование, как API реагирует на разные типы входных данных — числа, строки, JSON-объекты.
5. Contract Testing (тестирование контракта)
- Суть: проверяет, что обмен данными между клиентом и API соответствует заранее оговорённой структуре запросов и ответов.
- Цель: гарантировать, что клиент и сервер «говорят на одном языке» — форматы JSON/XML, HTTP-статусы, заголовки запросов совпадают с документацией.
- Пример на изображении: схема с блоками «Request» (запрос) и «Response» (ответ), соединёнными с облаком API, иллюстрирует проверку структуры обмена данными.
6. Endpoint Testing (тестирование конечных точек)
- Суть: проверяет отдельные конечные точки (endpoints) API — корректно ли они реагируют на запросы и возвращают ожидаемые данные или коды ошибок.
- Цель: выявить неработающие или некорректно настроенные endpoints, например, 404-ошибки, неверные JSON-ответы.
- Пример: отправка GET-запроса к
/users должна возвращать список пользователей, а POST-запрос к /login — токен аутентификации. Если этого не происходит — endpoint требует доработки.