Vergleichen von zwei XML-Zeichenfolgen / -Dateien in Groovy / Java
Ich schreibe Unit-Tests zur Überprüfung einiger XML-Builder.
Jetzt stoße ich auf das Problem syntaktischer Unterschiede zwischen dem erwarteten und dem tatsächlichen Ergebnis, trotz ihrer identischen Semantik.
Beispiel:
Erwartetes Ergebnis:
<parent><child attr="test attribute">text here</child></parent>
Tatsächliche Ergebnis:
<parent>
<child attr="test attribute">
text here
</child>
</parent>
Ich habe versucht, die XML-Datei mit XmlUtil.serialize () zu normalisieren. Dabei wurden jedoch die Leerzeichen beibehalten, sodass syntaktische Unterschiede bestehen blieben.
Wie kann ich die normalisierte / kanonische Form von XML-Strings erhalten, um meine Tests robuster zu machen?
Ich schreibe eine Grails-Anwendung, daher bin ich mit jeder Lösung in Groovy oder Java einverstanden.