Опишите поля и варианты, которые действительно использует потребитель.
Зачем
Зачем это нужно
Сопоставьте тест потребителя с проверкой реального генератора ответа.
Проверьте добавление, удаление, смену типа и новые значения перечислений.
Вопросы
Частые вопросы
Как задать учебный контракт события?
«order_paid содержит order_id=ord-17, amount_kopecks=12500, currency=RUB. Уведомление использует эти три поля; trace_id игнорирует». Попросите положительный пример с trace_id и отрицательные без суммы или со строкой вместо числа. Важно проверить реальное чтение сообщения потребителем, а затем генерацию производителем: две согласованные заглушки могут пройти тесты, хотя настоящий код формирует другой формат события.
Почему не стоит сравнивать весь JSON буквально?
Если потребитель не зависит от части полей или порядка ключей, точный снимок создаёт лишние запреты на развитие интерфейса. Но чрезмерно свободный matcher тоже опасен: он может пропустить неверную валюту или отсутствующий обязательный идентификатор. Попросите обосновать каждое проверяемое поле и ограничение. Контракт должен отражать фактическую зависимость клиента, а не случайный пример ответа из документации.
Как проверять производителя API?
Подготовьте известное состояние данных, вызовите настоящую реализацию и сопоставьте ответ с договорёнными ожиданиями. Для событий проверяйте сериализованное сообщение, которое реально публикуется. Укажите инструмент и версии: синтаксис matchers и процедура верификации отличаются. Модель поможет составить сценарий, но один файл контракта без прогона обеих сторон не подтверждает совместимость текущих версий ваших сервисов.
Как вводить несовместимое изменение?
Определите потребителей, добавьте переходный вариант и проверьте миграцию каждого перед удалением старого поля. Новая версия URL или события сама по себе не сообщает, кто ещё использует прежнюю форму. Попросите последовательность этапов и наблюдаемые признаки завершения. Енотик не проверяет все ваши сервисы автоматически; результаты контрактных прогонов и фактическое использование версий нужны для решения о безопасном завершении перехода.
Рядом
Соседние страницы каталога
Дальше — весь каталог задач: поиск по названию, темы и фильтры.