我遇到过两种不同的 Web 服务方法应该返回完全相同的 XML 文件的情况。
现在,当我收到这两个响应时,我使用 XMLUnit 框架比较这些 XML 文件,该框架显示 xpath 位置 + 各个节点中的差异,如以下代码所示:
XMLUnit.setIgnoreWhitespace(true);
DetailedDiff diff = new DetailedDiff(XMLUnit.compareXML(firstXML,secondXML));
List<Difference> allDiifferences= diff.getAllDifferences();
for(Difference difference : allDiifferences){
System.out.println(difference.getControlNodeDetail().getXpathLocation()+" ("+difference.getControlNodeDetail().getValue()+") /("+difference.getTestNodeDetail().getValue()+")");
}
当我在 SoapUI 中运行测试时,我使用
log.info
log.error
显示 XML 中存储的差异的方法。
有没有更好的方法来显示这些差异?
最佳答案
我已经对此进行了一些研发,据我所知,这就是我可以告诉你的。 XMLUnit 提供了最稳定、最轻量级的工具,可以有效地查找两个 xml 文件之间的各种差异。当然,一旦发现这些差异,您可以自由选择如何显示它们。
关于java - 如何在 SoapUI 中明智地比较两个 XML 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35646716/