我试图看看是否可以使用XMLUnit来比较以下两种不同的XML。 我使用Diff类来比较以下两个XML并检查类似的返回false。
XML One
<Required>
<Question desc="Are you single?">
<Answers>
<Answer value="Yes"/>
<Answer value="No"/>
</Answers>
</Question>
</Required>
XML Two
<Required>
<Question desc="Are you single?">
<Answers>
<Answer value="No"/> ''Order is reversed in XML two
<Answer value="Yes"/>
</Answers>
</Question>
</Required>
这是我的JAVA代码:
Diff xmlDiff;
try {
xmlDiff = new Diff(xmlOne, xmlTwo);
xmlDiff.overrideElementQualifier(new RecursiveElementNameAndTextQualifier());
} catch (Exception e) { }
boolean isEqual = xmlDiff.similar()
答案 0 :(得分:2)
xmlDiff.similar 应该做的伎俩,但我经历过这并不总是有效。 我的解决方法是在比较之前对元素进行排序。
请注意,在您的应用程序中构建定义良好的排序通常是一个好主意,因为这样可以更轻松地进行自动测试。