Я предполагаю, что MyDao
- это интерфейс.В вашем тестовом классе вы должны сделать следующее:
@Mock
private MyDao myDao;
@InjectMocks
private MyServiceImpl myServiceImpl;
и удалить метод @BeforeEach
.Таким образом, вы введете макет своего дао в классе.Используя Mockito.when
, вы правильно настроите дао-макет, чтобы имитировать ваш настоящий дао.Не забудьте изменить объявление теста следующим образом:
@RunWith(MockitoJUnitRunner.class)
public class MyServiceImplTest
Если вы используете JUnit 5, объявление класса тестирования должно быть следующим:
@ExtendWith(MockitoExtension.class)
@RunWith(JUnitPlatform.class)
В этом последнем случае, вероятно,Вы можете опустить @RunWith
, но я не уверен.