recheck-web – ein etwas anderer Ansatz zur Testautomatisierung

Seite 3: Filter-Mechanismus als wichtigste Zutat

Inhaltsverzeichnis

Was wäre Git ohne die .gitignore-Datei? Das Ausfiltern irrelevanter Änderungen ist eine der wichtigsten Fähigkeiten eines Versionsverwaltungssystems. Wenn man nun Golden-Master-Testing als entsprechende Erweiterung versteht, ist das Ausfiltern dieser Änderungen auch hier von enormer Bedeutung. Traditionelle Assertion-basierte Tests ignorieren mehr als 99 Prozent der Änderungen. Stattdessen, ähnlich wie bei Git ohne .gitignore-Datei, wird recheck-web jede Änderung melden. Es liegt also am Nutzer, Änderungen zu ignorieren, die für ihn nicht von Interesse sind.

recheck-web kann für Cross-Browser-Testing, Cross-Device-Testing, Deep-Visual- sowie funktionales Regressionstesten verwendet werden – je nachdem, was man ignoriert oder eben nicht.

Der Filtermechanismus ist gleichermaßen einfach (angelehnt an die .gitignore-Datei) wie mächtig. So lassen sich einzelne Attribute global oder für bestimmte Elemente filtern sowie einzelne Elemente komplett oder sogar ganze Teilbereiche der Seite ignorieren. Und wem das noch nicht reicht, der kann Filterregeln in JavaScript implementieren und so etwa unterschiedliche URLs mit gleicher Basis oder Positionsunterschiede kleiner fünf Pixel ignorieren.

Ein guter Ausgangspunkt zum Verständnis sind die vordefinierten Filterdateien, die recheck-web mit ausliefert. So ist das Ignorieren der Elementpositionierung in der Regel eine gute Idee. Wenn die Leser mehr darüber erfahren möchten, wie sie ihre recheck.ignore-Datei pflegen oder eigene Filter erstellen können, sollten sie die Dokumentation lesen.

recheck-web ist eines der wenigen Golden-Master-basierten Testwerkzeuge. Alternativen sind zum Beispiel Approval Tests und Jest. Das Tool ist kostenlos und Open Source. Es bietet die Möglichkeit, schnell und einfach Tests zu erstellen, die vollständiger und robuster sind als herkömmliche Tests. Da es im Prinzip gerenderte Webseiten (oder Teil davon) miteinander vergleicht, lassen sich damit auch Cross-Browser-Testing, Cross-Platform-Testing und andere Testszenarien realisieren.

Das Geschäftsmodell des Unternehmens hinter recheck-web (ReTest) besteht darin, zusätzliche Dienstleistungen (z.B. zur Speicherung der Golden Master und Reports sowie eine KI zur Generierung der Tests) und eine kommerzielle GUI auf Basis des CLI zur Pflege der Golden Master anzubieten.

Jeremias Rößler
ist promovierter Informatiker, Speaker und Gründer der ReTest GmbH. Sie spezialisiert sich auf die KI-basierte Testgenerierung und stellt dazu das Difference-Testing-Tool recheck als Open Source bereit.
(ane)