我有以下 JAVA 代码:
@Override
public void myFunc(...) {
String content = createFileContent(...);
File f = createFile(content);
uploadFile(f);
deleteFile(f)
}
我想使用单元测试来测试文件内容或文件本身(两者都可以工作)。 该文件在函数结束之前被删除。 您建议在这里采取什么方法? (我使用 Mockito 作为模拟框架)
最佳答案
监视目标测试类并定义行为并验证方法的调用,如果您想断言参数,可以使用ArgumentCaptor
public class TargetTest {
@Test
public void shouldDoSomething() {
// Arrange
final String content = "content-file";
final File file = new File();
Target target = spy(target);
doReturn(content).when(target).createFileContent();
doReturn(file).when(target).createFile(content);
doNothing().when(target).uploadFile(file);
doNothing().when(target).deleteFile(file);
// Act
target.myFunc();
// Assert
verify(target).createFileContent();
verify(target).createFile(content);
verify(target).uploadFile(file);
verify(target).deleteFile(file);
}
}
关于java - 在删除文件内容之前创建单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62267388/