Pixel für Pixel
Visuelle Regressionstests mit BackstopJS
BackstopJS testet automatisiert, ob sich das Aussehen einer Website verändert hat – unabhängig von Änderungen am Code. Webentwickler können so sicherstellen, dass ihre Arbeit keine unbeabsichtigten Auswirkungen hat.
Automatisierte Tests sind ein zentraler Bestandteil moderner Softwareentwicklung, auch für das Web: Sie stellen HTTP-Anfragen, parsen HTML und simulieren Klickpfade. Dank Headless-Browsern mit JavaScript-Engine ist sehr viel auf diese Art testbar.
Einen wesentlichen Bestandteil von Websites prüfen in der Regel allerdings immer noch Menschen: das Aussehen. Stylesheets, Fonts und Bilder spielen zusammen und ergeben einen visuellen Gesamteindruck. Jedes dieser Elemente wird aber nicht nur auf einer Seite eingesetzt, sondern üblicherweise an vielen Stellen im Projekt wiederverwendet. Das ist praktisch und erwünscht, da es gerade in großen Projekten eine Menge Arbeit ersparen kann. Allerdings birgt dann jede Änderung an einem solchen Element die Gefahr von Nebenwirkungen, die sich nur mit großem Aufwand in den Griff kriegen lassen: Entwickler müssen nicht nur die Seite ansehen, an der sie gerade arbeiten, sondern auch an sämtlichen anderen Seiten des Projektes prüfen, ob sich dort nicht Änderungen eingeschlichen haben, die gar nicht beabsichtigt waren.