Какой реальный баг может возникнуть из-за неправильного понимания test doubles?
Что хотят услышать интервьюеры:
Суть: fake, stub, mock и spy помогают изолировать зависимости, но имеют разные цели.
Ответ:
Пример:
fakeRepo := InMemoryRepo{} Практический акцент: Проверяйте не только happy path: добавьте негативные сценарии, timeout/cancel, граничные значения и регрессионный тест на типичную ошибку.
Типичная ошибка: называть все mock-ом и проверять лишние вызовы.
Как отвечать на собеседовании: На собеседовании связывайте тесты с рисками: чистая логика, HTTP, БД, concurrency, контракты и регрессии.