Modul Complete Tree Comparison
Verwenden Sie das Modul Complete Tree Comparison, um Dateien mit baumstrukturierten Daten wie JSON- oder XML-Dateien zu vergleichen. Tricentis Data Integrity unterliegt keinen Einschränkungen bei der Dateigröße, sodass Sie große Bäume leicht vergleichen können.
Das Modul Complete Tree Comparison ist Teil der Untermenge Tosca Data Integrity Modules And Samples.tsu.
Verstehen, was Sie vergleichen können
Das Modul hilft Ihnen, Unterschiede in hierarchischen oder verschachtelten Daten zu erkennen. Sie können fehlende Knoten und Typunterschiede erkennen und melden. Sie können Folgendes vergleichen:
-
JSON mit JSON. Diese Vergleiche verifizieren die strukturelle Ausrichtung und prüfen auf Wert- und Typinkongruenzen, z. B. Zeichenfolge vs. Zahl.
-
JSON mit XML. Diese Vergleiche berücksichtigen die hierarchischen Strukturen beider Formate, die auf einen Baum abgebildet werden. Attribute existieren nicht in JSON und Tosca behandelt jeden Wert als Zeichenfolge für den Vergleich.
-
XML mit XML. Diese Vergleiche verifizieren die strukturelle Ausrichtung und prüfen auf Wert- und Attributinkongruenzen.
Diese Tabelle erläutert wichtige Unterschiede zwischen JSON- und XML-Dateien für Vergleiche:
|
JSON |
XML |
---|---|---|
Typen |
JSON-Dateien können mehrere Datentypen enthalten, z. B. Zeichenfolgen, Zahlen, boolesche Werte, Arrays oder Objekte. Bei Vergleichen von JSON mit JSON müssen die Struktur und alle Datentypen übereinstimmen. Wenn dies nicht der Fall ist, meldet Tosca sie als unterschiedlich im Typ. |
XML-Dateien erlauben nur Zeichenfolgentypen. |
Attribute |
Es ist nicht möglich, Attribute in JSON zu definieren. |
XML behandelt die meisten Daten als Text, aber Attribute und CDATA-Abschnitte können einen bestimmten Text haben. |
Datenstruktur |
Sowohl JSON als auch XML organisieren Daten hierarchisch. Tosca meldet fehlende Ziel- und Quellknoten. |
|
Wert |
Wenn ein Knoten den gleichen Pfad und Typ in Quelle und Ziel hat, z. B. "1" und 1, prüft Tosca, ob der Wert des Knotens übereinstimmt, und meldet das Ergebnis. |
Modulattribute
Das Modul Complete Tree Comparison hat folgende Attribute:
Modulattribut |
Beschreibung |
---|---|
Source |
Geben Sie den absoluten Pfad zur Quelldatei an. |
Target |
Geben Sie den absoluten Pfad zur Zieldatei ein. |
General Options |
Geben Sie den absoluten Pfad zur Vergleichsreportdatei an. |
Beispiel
Nehmen wir an, Sie möchten eine JSON-Datei mit einer XML-Datei vergleichen.
Dies ist Ihre Quelldatei, Source1.json, die sich unter C:\Examples\Tree Vergleich\Quellen\ befindet:
{
"person": {
"name": "Alice",
"age": 30,
"contacts": [
{"contact": "alice@example.com"},
{"contact": "123-456-7890"},
"END"
]
}
}
Und das ist Ihre Zieldatei, Target1.xml, die sich unter C:\Examples\Tree Comparison\Targets\Target1.xml befindet:
<person>
<name>Alice</name>
<age>30</age>
<contacts>
<contact>alice@example.com</contact>
<contact type="phone">123-456-7890</contact>
</contacts>
</person>
Um die beiden zu vergleichen, führen Sie die folgenden Schritte durch:
-
Erstellen Sie einen Testfall und legen Sie das Modul Complete Tree Comparison darauf ab.
-
Definieren Sie Ihre Source und Ihr Target.
-
Definieren Sie, wo Sie Ihren Vergleichsreport speichern möchten. In diesem Fall ist das C:\Examples\Tree Comparison\Reports.
Daten in Tosca laden
Tosca vergleicht die Dateien folgendermaßen:
-
Es gleicht das Wurzelelement person ab.
-
Es vergleicht die untergeordneten Knoten name, age und contacts.
-
Es ordnet das Array contacts in der JSON-Datei dem Element contacts in der XML-Datei zu. Die einzelnen Objekte im Array werden den Kontaktelementen in der XML-Datei zugeordnet.
-
Es meldet Attribute wie phone als fehlend in der JSON-Datei.
-
Es meldet zusätzliche Knoten wie END als fehlend in der XML-Datei.
Wenn Sie das Attribut END und das Attribut type="phone" aus dem zweiten Kontaktelement in der XML-Datei entfernen, sind beide Dateien in Struktur und Wert gleich.
Sie können den Report Viewer verwenden, um Ihre Datenbank anzuzeigen und darüber zu berichten.