Тестирование интеграций: что проверить до запуска, чтобы не было позора
Тестирование интеграций — это не “поиграться в тестовой среде”. Это проверка, что деньги и заявки не исчезают, даже если что-то идет не по плану.
1) Что нужно протестировать обязательно: 3 группы сценариев
А. Нормальные сценарии — всё работает: заявка создана, оплата прошла, статус обновился, данные попали куда надо.
B. Пограничные сценарии — частично/неполно: клиент ввел неполные данные, дважды нажал кнопку, оплатил и сразу отменил.
C. Аварийные сценарии — внешняя система недоступна, отвечает с задержкой, возвращает ошибку.
Если вы тестируете только “норму”, вы тестируете красивую картинку, а не реальную жизнь.
2) Чеклист для бизнеса: что спросить у подрядчика до релиза
- Как мы увидим, что заявка “зависла”?
- Что будет, если внешний сервис не отвечает 10 минут?
- Как система ведет себя при повторной отправке?
- Кто и как “догоняет” неотправленные операции?
- Есть ли список статусов: “ожидает/успешно/ошибка/нужно вмешательство”?
Это не технарщина — это управление риском.
3) Тестировать нужно не только успех, но и ошибки
Ошибки — это не “редкость”. Это нормальная часть жизни: лимиты, таймауты, обновления у внешнего сервиса, человеческий фактор.
Если ошибки не смоделированы заранее, первый, кто их увидит — ваш клиент.
4) Нужны “тестовые данные” и повторяемость
Чтобы приемка была честной, тесты должны повторяться. Иначе сегодня “повезло”, а завтра — нет.
Вы договариваетесь о:
- фиксированном наборе кейсов (примеры заказов/сумм/скидок/доставок);
- ожидаемом результате (что где появится);
- сроке исправления критичных проблем.
5) Финальная проверка перед запуском: “готовность к бою”
Перед релизом важно подтвердить:
- есть ответственные за запуск;
- есть план, что делаем при сбое;
- есть быстрый способ выключить проблемную часть, не останавливая всё;
- есть мониторинг.