如何使用 FileUtils 对将文件保存到磁盘进行单元测试?
How do I unit-test saving file to the disk with FileUtils?
我知道之前有人问过这个变体。
但是,我的功能之一是使用 Common's FileUtils。在这里,它只需要 File 对象和 String。有什么方法可以对此进行单元测试吗?
当然可以。使用临时文件夹,将文件保存在那里,并在测试后删除该文件夹。
如果您使用 JUnit,请查看 TemporaryFolder
JUnit 规则(它会为您创建一个临时文件夹并负责删除)。
示例代码:
public class YourTest {
@Rule
public TemporaryFolder folder= new TemporaryFolder();
@Test
public void testUsingTempFolder() throws IOException {
String filePath = folder.newFile("myfile.txt").getAbsolutePath();
FileUtils.writeFile(filePath, "some String");
assertTrue(new File(filePath).exists());
}
}
我知道之前有人问过这个变体。
但是,我的功能之一是使用 Common's FileUtils。在这里,它只需要 File 对象和 String。有什么方法可以对此进行单元测试吗?
当然可以。使用临时文件夹,将文件保存在那里,并在测试后删除该文件夹。
如果您使用 JUnit,请查看 TemporaryFolder
JUnit 规则(它会为您创建一个临时文件夹并负责删除)。
示例代码:
public class YourTest {
@Rule
public TemporaryFolder folder= new TemporaryFolder();
@Test
public void testUsingTempFolder() throws IOException {
String filePath = folder.newFile("myfile.txt").getAbsolutePath();
FileUtils.writeFile(filePath, "some String");
assertTrue(new File(filePath).exists());
}
}