我正在使用 Mockito 创建一个文件模拟对象,该对象将用作存储新文件的目录。
Folder folder = Mockito.mock(File.class);
File file = new Agent().createNewFile(folder, "fileName");
在我的代理类中:
public File createNewFile(File folder, String filename){
return new File(folder, "testfile");
}
但是在方法内部创建新文件时,我在 File 的初始化块中收到 NullPointerException createNewFile
:
java.lang.NullPointerException at java.io.File.<init>(File.java:308)
我认为这是因为 File 没有任何空的构造函数,所以在模拟对象时,一些内部状态保持为空。
我是否采取了错误的方法来模拟File folder
对象?我的目标是在创建新文件之前检查一些约束,但我不想依赖文件系统上现有的真实文件夹。
谢谢你。