TestNG:断言两个文件的内容而不进行格式化

时间:2017-04-25 23:22:12

标签: java json testng java-io

我有一段生成json文件的代码。我正在编写单元测试来比较此文件的内容与预期的输出。我使用代码片段

Assert.assertEquals(FileUtils.readLines(outputFile), 
                    FileUtils.readLines(new File("expected.json")));

现在,json生成器使用自己的格式编写json文件,所以我只想比较两个文件的内容,并在比较时修剪两个文件的换行符。如果不逐行阅读,最好的方法是什么?

1 个答案:

答案 0 :(得分:0)

hamcrest包有一个matcher类,它可以完成您想要的任务:IsEqualIgnoringWhiteSpace。它会挤压空间并从每条线的正面和背面剥去大部分空间。

您可能需要对正在测试的文件进行规范化,但匹配器会为您完成繁重的工作。