Ключевые факты
- Категория
- Разработка и Web
- Типы входных данных
- textarea, text, checkbox, number
- Тип результата
- json
- Покрытие примерами
- 4
- API доступен
- Yes
Обзор
Тестер мутаций API-контракта — это инструмент для автоматической проверки надежности вашего API. Он анализирует спецификацию OpenAPI 3.x, генерирует базовые запросы и применяет к ним семантические мутации, такие как удаление обязательных полей, отправка отрицательных чисел или спецсимволов. Вы можете сгенерировать план тестирования офлайн или отправить мутированные запросы на реальный сервер, чтобы выявить слабые места в защитной валидации бэкенда.
Когда использовать
- •Перед релизом нового API для проверки обработки некорректных данных и граничных значений.
- •При аудите безопасности существующих эндпоинтов на уязвимости к нестандартным payload.
- •Для проверки соответствия реального поведения бэкенда заявленной спецификации OpenAPI.
Как это работает
- •Вставьте спецификацию OpenAPI 3.x в формате YAML или JSON.
- •Укажите базовый URL и заголовок авторизации, если хотите выполнить реальные запросы к серверу.
- •Настройте количество мутаций на поле и включите опцию выполнения запросов.
- •Получите JSON-отчет со статусами мутаций: отклонено сервером (defended) или ошибочно принято (accepted).
Сценарии использования
Примеры
1. Проверка эндпоинта регистрации пользователей
QA-инженер- Контекст
- Команда разработала новый API для регистрации, который требует email, роль и возраст.
- Проблема
- Нужно убедиться, что сервер не принимает отрицательный возраст или некорректные роли, не отправляя реальные запросы на данном этапе.
- Как использовать
- Вставить YAML-схему эндпоинта /users, указать количество мутаций на поле равным 3 и запустить генерацию без выполнения.
- Пример конфигурации
-
mutationsPerField: 3, executeMutations: false - Результат
- Инструмент генерирует JSON-план с 8 мутациями, включая отправку отрицательного возраста и спецсимволов в email, готовый для анализа.
2. Активное тестирование валидации на staging-сервере
Backend-разработчик- Контекст
- Разработчик хочет проверить, как текущий код обрабатывает пропущенные обязательные поля и неверные типы данных.
- Проблема
- Ручное составление некорректных запросов для десятков полей занимает слишком много времени.
- Как использовать
- Вставить спецификацию, указать базовый URL staging-сервера, добавить Bearer токен и включить выполнение мутаций.
- Пример конфигурации
-
baseUrl: https://staging.api.com, executeMutations: true, authorizationHeader: Bearer token123 - Результат
- Инструмент отправляет мутированные запросы на сервер и возвращает отчет, показывающий, какие некорректные запросы были ошибочно обработаны со статусом 200 (accepted), а какие успешно заблокированы (defended).
Проверить на примерах
developmentСвязанные хабы
FAQ
Какие типы мутаций поддерживает инструмент?
Инструмент генерирует пропуски обязательных полей, отрицательные числа, нарушения перечислений (enum), пустые строки и спецсимволы.
Обязательно ли отправлять запросы на реальный сервер?
Нет, если оставить базовый URL пустым и не включать выполнение, инструмент просто сгенерирует JSON-план мутаций для ознакомления.
Поддерживается ли OpenAPI версии 2.0 (Swagger)?
Нет, инструмент работает только со спецификациями формата OpenAPI 3.x.
Как инструмент понимает, что мутация успешно заблокирована?
Если сервер возвращает статус ошибки (например, 400 Bad Request), мутация помечается как защищенная (defended). Если возвращается успешный статус (2xx) — как принятая (accepted).
Как передать токен авторизации для защищенных эндпоинтов?
Используйте поле «Заголовок авторизации», указав полное значение, например «Bearer ваш_токен».