Писал тест для своего проекта на Spring Boot и появилась проблема: класс, который я тестирую, использует в одном из своих методов компонент CrudRepository (доступ на самом деле через сервис, но не столь важно). Суть в том, что так, как это тест, то при обращении к репозиторию возникает NullPointerException. Нужен способ подменить используемый компонент репозитория с помощью Mockito, чтобы была возможность самому установить возвращаемые им значения.
Нашел ответ. Если хотим подменить компонент Spring, в классе-тесте нужно внедрить этот компонент не через @Autowired, а через @MockBean.
SaleRepository sRepo = mock(SaleRepository.class);
when(sRepo.findAllByEnabledFalse()).thenReturn(list);
Продвижение своими сайтами как стратегия роста и независимости