我想为非回归测试提供一个diff报告。回归测试是比较HTML文件,并生成报告,哪些文件相同,哪些不相同。
我发现了一个叫做"CS-HTMLDiff"的工具,在这个工具中我可以比较文本或HTML文件,并在HTML或XML文件中生成报告。我不能使用这个工具,因为我想在ant构建上执行这个测试,但是这个工具不支持命令行功能。(我没有找到从代码或ant构建中运行此工具的任何其他方法,因为它不支持命令行功能)
是否有其他工具或java库可以比较html文件并生成报告?(最好是开源的)
我已经读了一些stackoverflow信息,但我没有找到任何解决我的问题的方法。一个可定制的diff工具,可以生成报告(XML, HTML)
谢谢你的帮助
您可以尝试DaisyDiff,这是一个区分(比较)HTML文件的Java库。它突出显示添加和删除的单词,并注释样式的更改。
可以使用命令行(参见DaisyDiff示例)或java api。请参阅Main类和DaisyDiff类。
这是一篇博文(德文),其中包含一些生成html报告的代码片段。
评论后编辑
要简单地检查是否有任何差异并捕获这些文件,不需要任何附加组件,
使用如下内容:
<project>
<fileset dir="/path/to/folder1" includes="**/*.html" id="diff">
<different targetdir="/path/to/folder2" ignoreFileTimes="true"/>
</fileset>
<pathconvert refid="diff" pathsep="${line.separator}" property="htmldiff"/>
<!-- if fileset diff is empty, ${htmldiff} and htmldiff.txt are also empty -->
<!-- echo to file, one file per line -->
<echo file="htmldiff.txt">${htmldiff}</echo>
</project>