0

JUnit テストで、保存されたサンプル xml とマーシャリングされたライブ xml を比較しています。xml 内のキーと値のペアの存在を検証します。

私は特にXmlUnit 2.1.0を利用しています

私のxmlは次のとおりです。

<entries>
        <entry>
            <key>delete</key>
            <value>ENABLED</value>
        </entry>
        <entry>
            <key>view</key>
            <value>DISABLED</value>
        </entry>
        <entry>
            <key>create</key>
            <value>DISABLED</value>
        </entry>
    </entries>

エントリの順序は異なる場合があります。単なる順序の変更であっても、異なるキー値が xml の違いとして認識されるため、正しく検証する方法がわかりません。

JUnit の次のアサーションとの類似性を主張しています。

 assertThat(marshalledXml, isSimilarTo(Input.fromFile("path/to/example.xml").ignoreWhitespace().ignoreComments());

ElementSelector で XPath マッチャーまたは DefaultNodeMatchers を使用する必要があるのではないかと思います。

4

1 に答える 1