我使用Java 8编写与文件系统交互的应用程序。为了使测试更容易,我在我的方法中注入FileSystem
,可以将其换出进行测试。我目前在单元测试中使用jimfs
,在生产中使用DefaultFileSystem.getFileSystem()
。
我希望我的代码能够独立于平台并在单元测试和生产之间移植,但是,我认为标准库中的类可能会阻止这种情况。
例如,java.io.File
包含:
private static final FileSystem fs = DefaultFileSystem.getFileSystem();
似乎File
将始终引用真实文件,这对我的单元测试来说是一个问题。
Path
只是一个界面,它应该让事情变得简单,除了它有一个创建File
的方法!
File toFile();
Filesystem
便携式代码吗?