2

xml 文字列の比較に問題があります。

私の比較機能は

public static boolean compareXMLs(String xmlSource, String xmlCompareWith){

XMLUnit.setIgnoreWhitespace(true);
XMLUnit.setIgnoreComments(true);
XMLUnit.setIgnoreAttributeOrder(true);

XMLUnit.setNormalizeWhitespace(true);
XMLUnit.setIgnoreDiffBetweenTextAndCDATA(true);

Diff myDiff = new Diff(xmlSource, xmlCompareWith);
myDiff.overrideDifferenceListener(new IgnoreTextAndAttributeValuesDifferenceListener());
return myDiff.similar();
}

私の単体テストは

 String xml1 = "<a>f</a>";
 String xml2 = "<a>1</a>";
 assertEquals(true, RestCommonUtility.compareXMLs(xml1, xml2));

 xml1 = "<a></a>";
 xml2 = "<a>1</a>";
 assertEquals(true, RestCommonUtility.compareXMLs(xml1, xml2));

私の単体テストは最初のアサートで合格しましたが、2 番目のアサートで失敗しました。設定IgnoreTextAndAttributeValuesDifferenceListenerしましたが、2 番目のアサートが失敗します。この問題を解決する方法はありますか? または、この種の比較に役立つ他のフレームワークはありますか?

4

2 に答える 2