Проверяет понимание разницы между полным и частичным мокинг-объектами.
Mock: Полная заглушка (все методы подменяются).
Spy: Частичная заглушка (реальные методы вызываются, если не переопределены).
Использование:
List<String> mockList = Mockito.mock(List.class);
when(mockList.size()).thenReturn(10); // Все методы по умолчанию — заглушки.Использование:
List<String> realList = new ArrayList<>();
List<String> spyList = Mockito.spy(realList);
spyList.add("Alice"); // Реальный метод.
when(spyList.size()).thenReturn(100); // Переопределённый метод.Вывод:
Mock: Для полной изоляции.
Spy: Для тестирования реального объекта с частичной подменой.