我想执行单元测试以检查Java中的文件加载。我在 Mockitos Dothrow 上看到了一些帖子,但不要完全实现它。
我的方法看起来像这样。
public void loadPropertiesFile(String filepath){
logger.info("Loading properties file");
try{
prop.load(new FileInputStream(filepath));
logger.info("Properties file read");
}catch(IOException e){
e.printStackTrace();
logger.info("Properties file read error");
}
}
我试图这样测试,但是在使用不当的情况下会出错:
@Test
public void loadPropertiesFileTestTrue(){
Utility util=new Utility();
doThrow(FileNotFoundException.class)
.when(util)
.loadPropertiesFile(null);
}
您只能在模拟对象上使用doThrow()
方法。
您应该这样更改代码:
@Test
public void loadPropertiesFileTestTrue(){
Utility util=Mockito.mock(Utility.class);
doThrow(FileNotFoundException.class)
.when(util)
.loadPropertiesFile(null);
}