testing-aqa middle

В чём разница: Mockito: mock vs spy?

Ответ

mock() — пустой объект, все методы возвращают default (null, 0, false). spy() — обёртка над реальным объектом, методы вызываются по-настоящему, если не заmock'ать.

Разбор: mock() даёт объект-заглушку, где каждый метод возвращает значение по умолчанию (null/0/false), тогда как spy() оборачивает реальный экземпляр и по-настоящему выполняет его методы, пока их явно не застабить. Главная ловушка — поменять местами поведение mock и spy. spy() как раз и нужен для оборачивания реальных объектов, в том числе классов.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться