如何在java中编写单元测试来加载文件

问题描述 投票:0回答:1

我想执行单元测试来检查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");
    }
}

我试图像这样测试它但是因为doThrow的不当使用而出错:

@Test
    public void loadPropertiesFileTestTrue(){
        Utility util=new Utility();

        doThrow(FileNotFoundException.class)
            .when(util)
            .loadPropertiesFile(null);

    }
java unit-testing junit mockito
1个回答
1
投票

您只能在模拟对象上使用doThrow()方法。 您应该像这样更改代码:

@Test
public void loadPropertiesFileTestTrue(){
     Utility util=Mockito.mock(Utility.class);

     doThrow(FileNotFoundException.class)
            .when(util)
            .loadPropertiesFile(null);

}
© www.soinside.com 2019 - 2024. All rights reserved.