Sai*_*ios 21 java junit unit-testing text-files
我想在我正在研究的一个小项目上实现JUnit,因为我想了解一下它.
我读过的教程都引用了具有特定输出的方法.
在我的情况下,我的输出是文件,我该怎么做?任何简单的例子?任何可以帮助我的方法?
这些文件是由void私有方法构建的原始文本文件.
Jon*_*man 23
您希望为给定的输入集获取正确的输出文件,并设置测试以使用这些输入调用void方法,然后将验证的输出文件与您的方法生成的内容进行比较.您需要确保有某种方法来指定方法输出的位置,否则您的测试将非常脆弱.
@Rule
public TemporaryFolder folder = new TemporaryFolder();
@Test
public void testXYZ() {
final File expected = new File("xyz.txt");
final File output = folder.newFile("xyz.txt");
TestClass.xyz(output);
Assert.assertEquals(FileUtils.readLines(expected), FileUtils.readLines(output));
}
Run Code Online (Sandbox Code Playgroud)
使用commons-io FileUtils进行方便的文本文件比较和JUnit的TemporaryFolder,以确保输出文件在测试运行之前永远不存在.