我想使用 XMLUnit 比较两个 xml 文件。我希望DetailedDiff 不会将不同顺序的相同标签报告为差异。例如,如果我用这两个片段创建了DetailedDiff:
<a><b/><c/></a>
和
<a><c/><b/></a>
由于 b 和 c 标记乱序,DetailedDiff 将创建两个差异。我已经尝试过覆盖元素限定符,但它不会导致任何更改。我做错了什么还是这不可能用 XMLUnit 做?作为参考,这里是我用来比较两个 xml 文件的代码(不包括 overrideElementQualifier 调用)。
public List<Difference> getDifferenceList(Reader file1, Reader file2) {
Diff d = new Diff(file1, file2); //I'm passing the args as FileReaders
d.overrideElementQualifier(new RecursiveElementNameAndTextQualifier());
detailedDiff = new DetailedDiff(d);
List<Difference> allDifferences = detailedDiff.getAllDifferences();
return allDifferences;
}