java我可以使用XMLUnit比较两个结构稍有不同的XML文件吗?
我有以下结构的XML文件:
<?xml version="1.0" encoding="UTF-8"?>
<report>
<data>
<table>
<row>
<cell name="grouping_type">-1</cell>
<cell name="book_name">Citygroup</cell>
<cell name="account"/>
<cell name="owner_name"/>
</row>
<row>
<cell name="grouping_type">1</cell>
<cell name="book_name">Citygroup</cell>
<cell name="account">10933tros_3</cell>
<cell name="owner_name">10933os</cell>
</row>
</table>
</data>
</report>
还有一个:
<?xml version="1.0" encoding="UTF-8"?>
<report>
<data>
<table>
<row>
<cell name="grouping_type">-1</cell>
<cell name="book_name">Citygroup</cell>
<cell name="account"/>
<cell name="ïd"/>
<cell name="owner_name"/>
</row>
<row>
<cell name="grouping_type">1</cell>
<cell name="book_name">Citygroup</cell>
<cell name="account">10933tros_3</cell>
<cell name="ïd">12</cell>
<cell name="owner_name">10933os</cell>
</row>
</table>
</data>
</report>
唯一的区别是属性name=“ïd”的附加“cell”元素。我可以使用XMLunit比较这两个XML文件,这样唯一的区别就是增加了“cell”元素
我的代码是:
DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
Document doc1 = docBuilder.parse(downloadedFile);
Document doc2 = docBuilder.parse(etalonFile);
org.custommonkey.xmlunit.Diff myDiff = new Diff(doc1, doc2);
DetailedDiff detailedDiff = new DetailedDiff(myDiff);
Iterator<org.custommonkey.xmlunit.Difference> iter = detailedDiff.getAllDifferences().iterator();
org.custommonkey.xmlunit.Difference diff;
NodeDetail controlNodeDetail;
NodeDetail testNodeDetail;
while (iter.hasNext()) {
diff = iter.next();
controlNodeDetail = diff.getControlNodeDetail();
System.out.println(diff);
}
XMLUnit将第一个XML的“id”单元格与第二个XML的“owner\u name”单元格进行比较。是否可以使用XMLUnit解决我的问题
共 (0) 个答案