我需要对包含生成的.xml和.wsdl文件的大型目录结构进行区分.生成的.xml文件按照子元素显示的顺序不同. XmlUnit Diff.similar()方法应该处理这种情况:
“如果两个文件包含相同的要素和属性,不论订单如何,都被认为是”相似的“.
但是情况并非如此.我拿了一个.xml文件,颠倒了两个子元素的顺序,而XmlUnit表示它们不相似.
XmlUnit已损坏,不提供比内置的diff实用程序更多的功能.
是否有一个替代XmlUnit可以识别.xml文件中的简单差异,如子元素的排序?
我有一个类似的问题,在我的情况下,我有几个具有相同名称的标签,但不同的属性(顺序没有关系),但是XmlUnit始终先检查,第二个与第二个…可以交换.我的问题是:
我在这里找到一个解决方案:
http://www.infoq.com/articles/xml-unit-test
在我的情况下,只是覆盖了元素限定词:
Diff diff = new Diff(controlXml,responseXml); diff.overrideElementQualifier(new ElementNameAndAttributeQualifier());