XMLUnit忽略元素顺序

时间:2014-03-05 08:05:52

标签: java xml xmlunit

我在XMLUnit的帮助下将两个xml文件相互比较 现在,如果我使用此代码进行比较

@Test
public void testForEquality() throws Exception {
 String xml1 = "<table = "01"><uid></uid></table><table = "02"><uid></uid></table>";
 String xml2 = "<table = "02"><uid></uid></table><table = "01"><uid></uid></table>";
 assertXMLEqual(myControlXML, myTestXML);
 Diff diff = new Diff(myControlXML, myTestXML);
 assertTrue(diff.similar());
}

现在它让我出局:预期属性值'02'但是'01' 但我不希望有什么不同,我希望表ID是唯一的,只检查 在这种情况下主要元素:table - &gt;包含是否在另一个文件中看到相同的表ID。

我已经看过同样的问题,但他们并没有帮助我。

1 个答案:

答案 0 :(得分:0)

您需要告诉XMLUnit应用哪些规则来识别它们应该相互匹配的表元素。您可以通过配置ElementQualifier来实现此目的 - 在您的情况下,您将希望使用内置的ElementNameAndAttributeQualifier将标识属性的名称作为构造函数参数传递。