Benutzerhandbuch

NCDiff wurde entwickelt um Reports, beziehungsweise Dateien mit spaltenbasiertem Inhalt miteinander zu vergleichen. Dies könnte man auch mit einem einfachen zeilenweisen Vergleich mit einem Texteditor oder entsprechender Kommandozeilentool durchführen. Aber verglichen mit einem einfachen Text-basierten Vergleich kann NCDiff durch Konfiguration viele Besonderheiten des Dateiformats berücksichtigen, wie etwa:

  • Zeilen müssen keineswegs in der gleichen Reihenfolge innerhalb der Dateien auftreten.

  • Spalten können ignoriert werden.

  • Die zu vergleichenden Spalten können an beliebigen Positionen in den Dateien auftreten.

  • Spalten können einem Datentypen zugewiesen werden, um z.B. Zahlen oder Datumswerte in unterschiedlichen Formaten vergleichen zu können.

  • Spalten mit Zahlenwerten können als Zahlen unter Berücksichtigung einer Toleranz verglichen werden.

  • Toleranzen können durch Bedingungen, die auf anderen Zellenwerte verweisen definiert werden.

  • Vergleich von Dateien mit unterschiedlichen Formaten. Beispielsweise kann eine CSV-Datei mit einem Excel-Sheet aus einem Excel Workbook verglichen werden.

  • Filter können sowohl auf die Daten der zu vergleichenden Dateien als auch auf die vorgefundenen Unterschiede angewendet werden.

Durch diese Funktionalität ist NCDiff im speziellen für Regressionstests besser geeignet als einfache Textvergleiche.

Speziell Regressionstests benötigen einfach zu konfigurierende und anpassbare Tools um möglichst schnell und flexibel eingesetzt werden zu können. Das NCDiff Tool wurde speziell darauf hin entworfen und bietet daher:

  • Plattformunabhängigkeit und einfache Erweiterbarkeit durch die Skriptsprache Python. Python ist auf vielen Plattformen beispielsweise Windows/Linux/Solaris/Macintosh verfügbar, ähnlich wie Pseudocode lesbar und kann dadurch schnell erlernt werden.

  • Modularen Aufbau. Durch den modularen Aufbau lassen sich in Python geschriebene Erweiterungen anstatt der Standard Implementierung leicht verwenden.

  • Dateibasierte Sortierung um auch sehr große Dateien vergleichen zu können.

  • Mehrere unterschiedliche Läufe können in einer Konfigurationsdatei konfiguriert werden.

  • Aufruf via Kommandozeile und flexible Parameterübergabe möglich.

  • Verschiedene Dateiformate (Excel, CSV, …) sowohl zum Einlesen als auch Schreiben werden unterstützt.

  • Generieren von Reports über die gefundenen Differenzen.

  • Vereinfachtes Finden und Beheben von Fehlkonfigurationen durch Ausgabe detaillierter Infos in der Konsole.