Я використовую Mockito @Mockта @InjectMocksпримітки для введення залежностей у приватні поля, котрі помічені за допомогою Spring @Autowired:
@RunWith(MockitoJUnitRunner.class)
public class DemoTest {
@Mock
private SomeService service;
@InjectMocks
private Demo demo;
/* ... */
}
і
public class Demo {
@Autowired
private SomeService service;
/* ... */
}
Тепер я хотів би також вводити реальні об’єкти в приватні @Autowiredполя (без сетерів). Це можливо чи механізм обмежений лише введенням Mocks?
MockitoAnnotations.initMocks(this);про @Beforeметод. Я знаю, що це не пов'язане безпосередньо з оригінальним запитанням, але для тих, хто піде пізніше, що потрібно буде додати, щоб зробити це можливим.
@RunWith(MockitoJUnitRunner.class)), вам не потрібна лініяMockitoAnnotations.initMocks(this);