我有两个类似的 xml 字符串。我使用 XMLUnit 来比较它们,但是在我运行一些示例测试来检查它们之后,它说它们并不相似和相同。我同意它们不相同,但我认为它应该为相似返回 true。下面是我运行的字符串和测试代码。
<Errors>
<Error>
<Sheet>Sample1</Sheet>
<ErrorCode>4</ErrorCode>
<Columns>
<Column>Id</Column>
<Column>Name</Column>
</Columns>
</Error>
<Error>
<Sheet>Sample2</Sheet>
<ErrorCode>4</ErrorCode>
<Columns>
<Column>Id</Column>
<Column>Name</Column>
</Columns>
</Error>
</Errors>
和
<Errors>
<Error>
<Sheet>Sample1</Sheet>
<ErrorCode>4</ErrorCode>
<Columns>
<Column>Name</Column>
<Column>Id</Column>
</Columns>
</Error>
<Error>
<Sheet>Sample2</Sheet>
<ErrorCode>4</ErrorCode>
<Columns>
<Column>Name</Column>
<Column>Id</Column>
</Columns>
</Error>
</Errors>
唯一的区别是 Column 节点是相反的,但我认为它应该返回两个字符串是相似的。
public void test() throws Exception{
String myControlXML = "here goes xml1";
String myTestXML = "here goes xml2";
Diff myDiff = new Diff(myControlXML, myTestXML);
System.out.println("pieces of XML are similar " + myDiff.similar());
System.out.println("but are they identical? " + myDiff.identical());
}