使用XMLUNIT进行XML比较



我想使用xmlunit比较两个XML文件(我不想重塑已经存在的东西)。

XML 1:

<?xml version="1.0"?>
<Product>
    <Property>
        <Container value="1">Test 01</Container>
        <Container value="3">Test 02</Container>
        <Container value="5">Test 03</Container>
    </Property>
</Product>

xml2:

<?xml version="1.0"?>
<Product>
    <Property>
        <Container value="3">Test 01</Container>
        <Container value="7">Test 02</Container>
        <Container value="1">Test 03</Container>
        <Container value="5">Test 04</Container>
    </Property>
</Product>

我只想在节点和属性匹配时比较元素。另外,如果位置不同,则应该相似。

我已经尝试了详细信息,但是它显示了很多结果,但我只想提取特定的更改。请给您的segestions。

如果您是与订单无关的比较,则ElementQualifier将有所帮助:

http://xmlunit.sourceforge.net/userguide/html/ar01s03.html

在某些情况下,XML两部分中的元素顺序可能并不重要。如果这是真的,那么差异需要帮助来确定要比较的要素。这是元素Qualifier的工作(请参阅第3.4节," ElementQualifier")。

具体来说,ElementNameAndAttributeQualifier似乎与您的要求符合:

仅具有相同名称的元素 - 和命名空间URI(如果存在),以及elementNameanNeMeanDattributequalifier的构造函数中给出的所有属性的相同值。

最新更新