Back to questions
Альфа Капитал
Senior
9
Что произойдёт, если в тесте с Mockito забыть замокать метод, и он вызывается в тесте?
Companies where asked
Answer from AI
sobes.tech AI
Если в тесте с Mockito забыть замокать метод, и этот метод вызывается во время выполнения теста, то поведение зависит от типа мока:
- Для обычных моков (созданных через
mock()) вызов незамоканного метода вернёт значение по умолчанию:nullдля объектов,0для чисел,falseдля boolean. - Для спаев (созданных через
spy()) вызов метода по умолчанию выполнит реальную реализацию, если метод не был замокан.
Это может привести к неожиданным результатам в тесте: например, если метод возвращает null, а код не ожидает этого, может возникнуть NullPointerException. Или если метод вызывает внешние зависимости, тест может стать нестабильным.
Поэтому важно явно задавать поведение моков для всех вызываемых методов, чтобы тест был предсказуемым и изолированным.