【发布时间】:2020-09-03 11:54:15
【问题描述】:
我有一个遗留代码,其中有一些方法如下:
public void display(String fileName, Path path){
//do some stuff
Files.exists(path);
if(null==privateMethod(fileName))
//something
}
private Object privateMethod(String fileName){
// do something
return object;
}
我正在为 display 方法编写测试(使用 mockito)。我如何绕过像 Files.exists(path) 和内部私有方法调用这样的调用,因为我认为普通的存根不能与私有方法一起使用(可见性问题)。由于 Files.exists() 是实用方法,因此无法模拟。我是否需要在测试方法中实际创建一些测试文件并可能删除它们?或者有没有更好的清洁方法。我也搜索了私有方法测试 - 每个人都建议我不允许使用的 powermock。无论如何,我不需要测试私有方法,但 绕过/存根他们的调用返回。
【问题讨论】:
标签: java unit-testing mockito