Сначала фиксируют принятие операции и её ID, затем ограниченно ждут терминального состояния или связанного события и проверяют итоговый бизнес-результат.
[имя] спросил: Как ты тестируешь async-флоу, где результат появляется позже через фоновую обработку?
Сначала фиксируют принятие операции и её ID, затем ограниченно ждут терминального состояния или связанного события и проверяют итоговый бизнес-результат.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Сначала фиксируют принятие операции и её ID, затем ограниченно ждут терминального состояния или связанного события и проверяют итоговый бизнес-результат.
Вместо fixed sleep используют polling с deadline и разумным интервалом либо ожидание события по correlation ID. Тестовые данные и consumer group должны быть изолированы. Отдельно проверяют timeout, повторную доставку, отказ worker и восстановление. Ответ 202 или наличие записи в очереди не доказывает успешное завершение. При падении сохраняют безопасную временную шкалу для диагностики. Бесконечное ожидание превращает дефект в зависший pipeline.