我正在写一个具有2级依赖注入的类的测试用例。我为1级依赖注入对象使用@Spy注解,我想模拟注入的第二级。但是,我一直在第二级获得空指针异常。有什么方法可以将模拟注入@Spy对象吗?Mockito注入模拟间谍对象
public class CarTestCase{
@Mock
private Configuration configuration;
@Spy
private Engine engine;
@InjectMocks
private Car car;
@Test
public void test(){
Mockito.when(configuration.getProperties("")).return("Something");
car.drive();
}
}
public class Car{
@Inject
private Engine engine;
public void drive(){
engine.start();
}
}
public class Engine{
@Inject
private Configuration configuration;
public void start(){
configuration.getProperties(); // null pointer exception
}
}
有你'MockitoAnnotations.initmocks初始化嘲笑(这)' – pvpkiran
没有,但这与这个问题有什么关系呢? – Wildchild
@Wildchild @ Mildito使得Mockito能够处理'@ Spy','@ Mock','@InjectMocks'等对象应该做的事情,所以如果你在构建'汽车'mocks之后应该注入...' – Antoniossss