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
setter없이 개인 필드에 주입하고 싶습니다 . 이것이 가능합니까 아니면 메커니즘은 Mocks 주입에만 국한됩니까?
MockitoAnnotations.initMocks(this);
이 @Before
방법을 잊지 마십시오 . 나는 그것이 원래의 질문과 직접적으로 관련이 없다는 것을 알고 있지만 나중에 나올 사람에게는 이것을 실행할 수 있도록 추가해야합니다.
@RunWith(MockitoJUnitRunner.class)
) 라인이 필요 없습니다MockitoAnnotations.initMocks(this);