Pixelstabile Aufnahmen
Deterministisches Rendering mit Wartezeiten für Schriften, gepinnten Animationen und Maskierung dynamischer Inhalte — Diffs zeigen echte Regressionen statt Rauschen.
ScanU ist eine Plattform für Visual-Regression- und Cross-Browser-Screenshot-Tests für professionelle Web-Teams. Sie erfasst pixelgenaue Renderings jeder relevanten Seite — in genau den Browsern und Viewports, die Ihre Nutzer tatsächlich verwenden — und macht die Layout-Änderungen sichtbar, die Unit- und End-to-End-Tests stillschweigend übergehen.
Was ScanU ist
ScanU verwandelt die letzte Meile der Release-Qualität — genau das, was Ihre Nutzer tatsächlich sehen — in ein Signal, auf das Ihr Team reagieren kann. Die Plattform nimmt pixelstabile Screenshots der von Ihnen definierten Seiten auf, hält eine explizite Baseline fest und vergleicht jede weitere Ausführung gegen diese Baseline — über alle Browser und Endgeräte hinweg, die für Sie relevant sind.
Die meisten Teams setzen bereits Linter, Typprüfungen, Unit-Tests und End-to-End-Flows ein. All das kann grün bleiben, während ein Button zwölf Pixel nach unten rutscht, ein Modal sein Padding verliert, ein Menü in Safari bricht oder ein Mobile-Breakpoint den Hero-Bereich stillschweigend umbricht. Funktionale Tests überprüfen Verhalten — sie überprüfen nicht wie eine Seite aussieht. Genau dafür ist ein Screenshot-Testing-Tool gedacht, und genau das leistet ScanU — ohne Umstände.
Im Hintergrund steuert ScanU reale Rendering-Engines — Chromium, Gecko und WebKit — gegen die URLs oder Komponenten-Previews, die Sie festlegen. Jeder Durchlauf erzeugt für jedes definierte Paar aus Browser und Viewport eine deterministische Aufnahme. Der erste akzeptierte Durchlauf wird zur Baseline. Ab diesem Moment ist jeder Pull Request, jeder Deployment-Schritt und jede geplante Prüfung ein Diff gegen diese Baseline: Jede visuelle Regression wird als prüfbare Änderung ausgewiesen — so, wie Code-Reviews eine geänderte Zeile sichtbar machen.
Die vollständige Vergleichspipeline kümmert sich um die Details, die Screenshot-Diffing im Produktivbetrieb erst wirklich brauchbar machen: Toleranz für Kantenglättung, Stabilisierung von Animationen, Schriftladen, Maskierung dynamischer Inhalte, Scroll-Capture über den Viewport hinaus sowie perzeptive Diff-Schwellen — damit eine Subpixel-Änderung beim Font-Hinting nicht eine echte Layout-Regression übertönt.
ScanU richtet sich an Teams, die das UI als Vertrag mit ihren Nutzern begreifen. Es ist ein Werkzeug für visuelle Regressionstests, ein Werkzeug für browserübergreifende Screenshot-Vergleiche und eine Review-Oberfläche für Diffs — in einer Plattform — zwischen Ihrem Build und Ihrem Release-Gate.
Deterministisches Rendering mit Wartezeiten für Schriften, gepinnten Animationen und Maskierung dynamischer Inhalte — Diffs zeigen echte Regressionen statt Rauschen.
Chromium, Gecko und WebKit parallel — in den Desktop-, Tablet- und Mobile-Viewports, die Ihre Nutzer tatsächlich verwenden.
Baseline, aktuelle Aufnahme und hervorgehobener Diff nebeneinander. Änderung akzeptieren, ablehnen oder Baseline aktualisieren — explizit, nie stillschweigend.
Läuft in Ihrer bestehenden Pipeline. Status-Checks, PR-Kommentare und Artefakt-Links erscheinen dort, wo Ihr Team ohnehin Code reviewt.
Richten Sie ScanU auf Storybook, Komponenten-Sandboxes oder Live-URLs aus. Token-Änderungen und Refactorings erhalten ein ehrliches visuelles Audit, bevor sie ausgeliefert werden.
Screenshots und Metadaten liegen auf europäischer Infrastruktur — mit DSGVO-konformer Datenverarbeitung. Geeignet für Teams mit strengen Anforderungen an die Datenresidenz.
Warum es zählt
Die Kosten eines visuellen Fehlers lassen sich selten in Entwicklungsstunden messen. Sie bemessen sich am Vertrauen einer Nutzerin, die Ihr Produkt öffnet, etwas dezent Falsches sieht — und still entscheidet, dass dieses Team es mit Details nicht so genau nimmt. Dieses Vertrauen lässt sich schwer wieder aufbauen, und es ist fast immer günstiger, den Fehler zu vermeiden.
Funktionale Tests beantworten eine Frage gut: „Tut der Button, was er soll, wenn man ihn klickt?“ Alles, was davor passiert, bleibt offen — ob der Button die richtige Farbe hat, die richtige Größe, die richtige Position, auf einem 360-Pixel-Display noch lesbar ist oder nach dem letzten CSS-Refactoring überhaupt noch sichtbar ist. Genau in dieser Lücke leben die meisten Release-Tag-Zwischenfälle.
Echte Regressionen, die wir in der Praxis sehen und für deren Aufdeckung ScanU gebaut ist, folgen wiederkehrenden Mustern:
gap eines Flex-Containers auf einem einzelnen Breakpoint kollabieren. Auf dem Desktop sieht das Layout identisch aus; auf einem 768-Pixel-Tablet überlappen sich plötzlich zwei Cards.Keine dieser Änderungen lässt einen Assertion fehlschlagen. Alle führen bei Nutzern zu Problemen. Die Aufgabe von ScanU ist, diese zweite Fehlerklasse genauso sichtbar, prüfbar und blockierbar zu machen wie einen fehlgeschlagenen Unit-Test. Sobald der Diff im Pull Request erscheint, kann eine Designerin ihn genauso kommentieren wie ein Reviewer eine Funktionssignatur — bevor die Änderung gemergt wird, nicht nachdem sie produktiv ist.
Dieser Wechsel — von „hoffentlich merkt es jemand im Staging“ zu „eine visuelle Änderung wird wie Code reviewt“ — ist der eigentliche Mehrwert eines Tools für visuelle Regressionstests in einer modernen Release-Pipeline.
Cross-Browser-Testing
Cross-Browser-Testing ist keine Nostalgie-Abgabe aus der IE6-Ära. Auch moderne Engines — Chromium, Gecko und WebKit — unterscheiden sich in den Details, auf denen Ihre Layouts stillschweigend aufbauen; eine überraschend große Zahl von Produktionsvorfällen lässt sich auf eine Rendering-Differenz zurückführen, die niemand geprüft hat.
Taucht eine Regression nur in einer Engine auf, liegt fast immer einer von drei Gründen vor: Ein Feature wurde verwendet, das in einzelnen Engines später ausgeliefert wird; ein Layout hängt von einer Metrik ab, die sich plattformabhängig unterscheidet (Scrollbar-Breite, Font-Baseline, Smoothing-Algorithmus); oder ein User-Agent-abhängiger Polyfill verhält sich im Feld anders als auf dem Entwicklerrechner. Alle drei sind für eine Engine-neutrale Testsuite unsichtbar.
Typische Beobachtungen aus einem Cross-Browser-Audit:
date, datetime-local, select — werden in WebKit sichtbar anders gerendert als in Chromium und schieben benachbarte Elemente gelegentlich um einige Pixel. line-height, die in Chromium ausbalanciert ist, schiebt einen CTA in Gecko über die Falz.gap in Flex-Containern, aspect-ratio und Container-Queries sind zu leicht unterschiedlichen Zeitpunkten in die Engines gekommen. Wenn Ihr Build auf ein älteres Baseline-Set zielt, rendern Fallback-Pfade möglicherweise anders als der Primärpfad.prefers-color-scheme, accent-color und forced-colors unter Windows — schlagen plattformabhängig unterschiedlich ins DOM durch und werden im lokalen Dev-Setup leicht übersehen.ScanU erfasst jede Seite in den von Ihnen konfigurierten Engines und Viewports in einem einzigen Durchlauf — mit identischen Fixtures und Timing-Hooks, sodass die angezeigten Diffs echte Layout-Unterschiede sind und keine Nebenwirkung davon, dass jeder Browser in einem anderen Harness läuft. Die vollständigen Cross-Browser-Funktionen finden Sie auf der Produktseite: Die Matrix, die Sie konfigurieren, ist die Matrix, die in jedem Durchlauf erfasst wird.
Für Teams, die Design-Systeme oder Produkte mit einer Marke als visueller Identität ausliefern, ist diese Matrix kein Nice-to-have. Sie ist der einzig verlässliche Weg, um zu wissen, dass das, was Ihre Kundschaft in Safari sieht, dem entspricht, was Sie in Chrome freigegeben haben.
| Browser | Viewport | Status |
|---|---|---|
| Chromium 124 | 1440 × 900 | Entspricht Baseline |
| Firefox 126 | 1440 × 900 | Entspricht Baseline |
| WebKit (Safari 17) | 1440 × 900 | Visueller Diff · Review |
| Chromium 124 | 768 × 1024 | Entspricht Baseline |
| WebKit (Safari 17) | 768 × 1024 | Layout-Verschiebung erkannt |
| Chromium 124 | 390 × 844 | Neue Baseline ausstehend |
So funktioniert Screenshot-Vergleich
Ein Visual-Diff-Tool ist nur so nützlich wie das Signal-Rausch-Verhältnis der Diffs, die es produziert. Die Capture-Pipeline von ScanU ist so konstruiert, dass sich zwischen zwei Durchläufen nur das ändert, was Sie tatsächlich geändert haben — und nicht die Bühne aus Schriften, Animationen, Zeitstempeln oder Werbeflächen drumherum.
Jeder Durchlauf ist eine dreistufige Pipeline. Zuerst navigiert ScanU in jeder Browser-Engine zur Seite oder Komponente, die getestet werden soll, wartet auf ein konfiguriertes Set an Readiness-Signalen — geladene Schriften, dekodierte Bilder, ruhiges Netzwerk, ein data-ready-Attribut oder eine eigene JavaScript-Probe — und pinnt alle CSS-Animationen auf ihren Endzustand. Anschließend erfasst ScanU die Seite in jedem konfigurierten Viewport im selben Durchlauf — mit Scroll-Stitching bei langen Seiten, damit Sie das vollständige Artefakt erhalten und nicht nur den sichtbaren Bereich. Zuletzt vergleicht die Pipeline die Aufnahme mit der akzeptierten Baseline und liefert pro Browser-Viewport-Paar ein Ergebnis: identisch, innerhalb der Toleranz oder signifikant abweichend.
Der Vergleich selbst ist kein naiver Pixel-Diff. ScanU wendet ein perzeptives Modell an, das Kantenglättung, Subpixel-Rendering und Farbraum-Abweichungen versteht — damit eine Kerning-Eigenheit in WebKit nicht als Bug durchgeht. Für Bereiche, die sich bei jedem Aufruf ändern — Live-Daten, relative Zeitstempel, randomisierte Inhalte, Karussells — lassen sich explizite Masken setzen, sodass diese Zonen null Rauschen zum Diff beitragen.
Wenn eine echte Änderung auftaucht, zeigt die Plattform drei synchronisierte Ansichten: die Baseline, die aktuelle Aufnahme und ein Diff-Overlay, das genau markiert, was sich bewegt hat. Eine einzelne prüfbare Entscheidung — akzeptieren, ablehnen oder Baseline aktualisieren — wird zu jeder Änderung protokolliert, und diese Entscheidung wird Teil der Projekthistorie. Es gibt keinen stillen Drift und kein automatisches Akzeptieren: Die Baseline bewegt sich nur, wenn eine autorisierte Person das ausdrücklich entscheidet.
Dieselbe Pipeline lässt sich über drei Einstiegspunkte steuern: gegen Live-URLs (Produktion, Staging, PR-Previews), gegen eine statische Site oder ein Build-Artefakt und gegen Komponenten-Previews in einer Storybook-ähnlichen Sandbox. Die meisten Teams nutzen den ersten Weg als Release-Gate, den zweiten für Deployment-Artefakte und den dritten für die Arbeit am Design-System — alle drei speisen denselben Baseline-Speicher.
Die zuletzt akzeptierte Aufnahme für diese Seite, diesen Browser und diesen Viewport. Eingefroren, bis ein Reviewer sie ausdrücklich aktualisiert.
Die Aufnahme aus diesem Durchlauf. Gleiche Fixtures, gleiche Timing-Hooks, gleicher Viewport — nur der zu prüfende Code hat sich geändert.
Bernsteinfarben hervorgehobene Regionen zeigen, wo die aktuelle Aufnahme die Baseline jenseits der konfigurierten Toleranz verlässt.
Für wen ScanU gemacht ist
ScanU richtet sich an Teams, deren Arbeit daran gemessen wird, was der Nutzer sieht. Das ist eine breitere Gruppe, als es zunächst klingt — nicht nur Designerinnen und Frontend-Entwickler, sondern alle, deren Release-Entscheidungen davon abhängen, dass ein UI an einem bestimmten Tag, in einem bestimmten Browser, in einem bestimmten Viewport korrekt ist.
Frontend- und Full-Stack-Entwicklerinnen nutzen ScanU als letzte Stufe einer Pull-Request-Pipeline: Der Build ist grün, die Unit-Tests laufen durch, die End-to-End-Suite ist zufrieden — und ein visueller Diff bestätigt entweder, dass die Änderung dem entspricht, was das Design vorgesehen hat, oder zeigt eine Regression, die durch reines Code-Review nicht auffindbar gewesen wäre. Das Ergebnis: weniger Zeit für Nach-Release-Feuerwehr, mehr Zeit für die Arbeit, die das Produkt wirklich voranbringt.
QA-Engineers gewinnen eine Testebene, die sich ohne Neuschreiben von Selektoren skalieren lässt. Eine neue Seite in die visuelle Suite aufzunehmen bedeutet eine URL und eine Baseline — kein Wochenprojekt mit brüchigem XPath. Die Schicht, die UI-Regressionen auffängt, ist jetzt ein erstklassiger Bestandteil der Testpyramide und nicht mehr eine nachträgliche Slack-Meldung einer Nutzerin.
Design-System- und Plattform-Teams setzen ScanU gegen jede Komponenten-Sandbox ihrer Bibliothek ein. Wenn sich ein Token ändert, erhalten alle abhängigen Komponenten automatisch ein visuelles Audit. Wenn eine Komponente refaktoriert wird, bekommen die nachgelagerten Konsumenten einen Diff, den sie vor dem Release der neuen Version prüfen können. So vermeidet ein Design-System, dass sich über Jahre stille Regressionen aufsummieren.
Produkt- und Engineering-Verantwortliche nutzen die Review-Oberfläche als Nachweis. Release Notes können auf den akzeptierten visuellen Diff verlinken. Incident-Reviews können dokumentieren, ob eine Regression erkannt, übersehen oder ausdrücklich akzeptiert wurde. Über die Zeit entsteht so ein nachvollziehbares Protokoll, wie das UI sich entwickelt hat und wer welche Änderung freigegeben hat.
Einsatzfelder
Dieselbe Plattform bedient sehr unterschiedliche Workflows. Die Gemeinsamkeit: Alle diese Teams liefern UI nach einem Takt aus, der ihren Kunden wichtig ist — und alle brauchen eine Möglichkeit, auf einen Blick zu sehen, ob das UI noch so aussieht, wie es aussehen soll.
Unabhängig von der Teamgröße führen meist fünf Auslöser zur Einführung von ScanU: ein kürzlicher Produktionsvorfall, den ein visueller Regressionstest abgefangen hätte; eine Design-System-Migration, deren Auswirkungen manuell kaum überprüfbar sind; ein CI/CD-Workflow, der ein Release-Gate jenseits von „Tests bestanden“ braucht; ein kundenorientiertes Deliverable, das Vorher-Nachher-Belege benötigt; oder eine Compliance-Haltung, die EU-gehostete Test-Tools bevorzugt. Eine gemeinsame CI/CD-Integration steht hinter allen fünf — dieselbe Pipeline läuft, ob sie durch einen PR, einen Merge oder einen nächtlichen Zeitplan ausgelöst wird.
Wöchentliche visuelle Deltas pro Kundenprojekt. Vorher-Nachher-Belege in jedem Sprint, in jedem vertraglich vereinbarten Browser — in einem Bericht.
Eine visuelle Stufe in der Testpyramide. Neue Seiten kommen mit URL und Baseline hinzu — keine brüchigen Selektoren, keine selbstgebauten Screenshot-Skripte zu pflegen.
Screenshot-Diffs erscheinen direkt am Pull Request. Layout-Regressionen werden im Review abgefangen — nicht in der Produktion und nicht im Slack-Thread einer Nutzerin.
Schnell iterieren, ohne die Startseite zu zerlegen. Ein deterministisches Sicherheitsnetz, das die Marketing-Site durch Redesigns, A/B-Tests und Token-Migrationen pixelstabil hält.
Visuelle Abdeckung über jede Komponenten-Sandbox. Token-Änderungen, Theme-Wechsel und Komponenten-Refactorings erhalten automatisch ein Audit, bevor die Bibliothek veröffentlicht.
Breakpoints auf Mobile, Tablet und Desktop im selben Durchlauf prüfen. Responsive-Tests werden vom Screenshot-Grabbing zur echten Review-Stufe.
CI/CD und Release-Sicherheit
Release-Sicherheit ist kein Gefühl. Sie ist eine Pipeline, die die Wahrheit darüber sagt, was tatsächlich ausgeliefert wird — einschließlich der Teile, zu denen Ihr Test-Runner keine Meinung hat. ScanU dockt als Status-Check, als PR-Kommentar und als abrufbares Artefakt an diese Pipeline an.
Das Integrationsmodell ist bewusst schlicht: Der Capture-Schritt von ScanU läuft im selben Job wie Ihre Tests; er meldet ein Pass, ein Review-Needed oder ein Fail am Pull Request; dieser Status wird wie jeder andere Pflicht-Check behandelt. Grün, Gelb und Rot kennt Ihr Team ohnehin aus der Pipeline — ein Visual-Regression-Check in diesem Rhythmus fügt eine neue Sicherheitsdimension hinzu, ohne ein neues mentales Modell zu verlangen.
Unter der Haube ist ScanU auf die Realität moderner CI/CD ausgelegt:
Die schrittweise Anleitung zur CI/CD-Integration beschreibt die Verdrahtung für GitHub Actions, GitLab CI, Bitbucket Pipelines und selbst gehostete Runner. Der Regelfall ist ein zusätzlicher Job; der Fortgeschrittenenfall ist eine Matrix von Umgebungen, in der sich eine Baseline über einen mehrstufigen Release vorwärts bewegt.
DSGVO · EU-Hosting · Datenschutz
Testartefakte sind Daten. Screenshots können beiläufig personenbezogene Daten erfassen, die auf einer Seite stehen — einen Namen in der Navigation, eine E-Mail im Profil-Menü, eine Bestellnummer auf einer Bestätigungsseite. Eine verantwortungsvolle Plattform für visuelle Tests behandelt diese Artefakte mit der gleichen Sorgfalt wie die Produktivdaten, die sie widerspiegeln.
ScanU wird in der Europäischen Union entwickelt und betrieben — Speicherung und Verarbeitung erfolgen auf EU-basierter Infrastruktur. Für Teams mit Anforderungen an Datenresidenz — regulierte Branchen, öffentliche Auftraggeber, datenschutz sensible B2B-Kunden — ist das häufig eine Beschaffungsvorgabe, keine Präferenz. ScanU erfüllt diese Vorgabe, ohne dass das Produkt an Funktion einbüßt.
Daraus folgen einige bewusst getroffene Designentscheidungen:
Die vollständige Datenschutz-Haltung — Unterauftragsverarbeiter, regionales Hosting, AVV, Aufbewahrungsfristen — finden Sie in der DSGVO- und Datenverarbeitungs-Dokumentation. Für die meisten Teams zählt die Kurzfassung: Ihre Screenshots bleiben in der EU, und die Plattform ist so gebaut, dass sie dort bleiben.
Der Unterschied
Visual Testing ist eine volle Kategorie. Was ScanU unterscheidet, sind zu großen Teilen die Dinge, die es nicht tut — Abkürzungen, die es ausschlägt, Rauschen, das es nicht in Ihre Review-Queue durchreicht, und die klaren Positionen dazu, wie ein Diff überhaupt reviewt werden sollte.
Generische Screenshot-Tools werden als Bibliothek ausgeliefert, die Sie an Ihren Test-Runner kleben — und dann dürfen Sie sich mit Timing, Schriften, Animationen und der ewigen Frage herumschlagen, ob eine Ein-Pixel-Verschiebung ein echter Bug oder ein Rundungsartefakt ist. ScanU bezieht eine festere Position: Wenn die Plattform keine deterministische Aufnahme erzeugen kann, ist das Problem der Plattform — nicht Ihres. Deshalb sind Readiness-Signale, Font-Loading, Animation-Pinning, Scroll-Stitching, perzeptives Diffing und Maskierungs-Regionen fest eingebaut und nicht nachträglich verdrahtet.
Die Preisgestaltung folgt demselben Prinzip. Für ein vernünftiges Team — ein paar Dutzend Seiten, drei Engines, drei Viewports, eine Pipeline — sollte visuelle Abdeckung kein Posten sein, der im Budget-Meeting verteidigt werden muss. Die vollständige Preisübersicht ist in klaren Zahlen gehalten: Was ist in jeder Stufe enthalten, was zählt als Run, und wo liegt die Obergrenze. Kein Individualangebot für Teams, die einfach das UI ausliefern möchten, das sie entworfen haben.
Stabilisierung, Font-Readiness, Animation-Pinning und Scroll-Stitching sind Plattform-Funktionen — keine Snippets, die Sie in Ihrem eigenen Repo pflegen.
Die Diff-Engine versteht Kantenglättung und Subpixel-Rendering, damit nicht sichtbare Nudges nicht die Regressionen übertönen, die tatsächlich zählen.
Baselines bewegen sich nur, wenn autorisierte Personen sie akzeptieren. Jede Aktualisierung ist auditierbar. Kein stilles Wegdriften.
Screenshots, Metadaten und Review-Historie liegen auf EU-Infrastruktur. Teams mit strenger Haltung müssen das nicht erst aktivieren.
Was ScanU auffängt
Die meisten Bugs, die eine Visual-Regression-Plattform abfängt, sind nicht exotisch. Es sind die kleinen, unspektakulären, leicht übersehenen Brüche, die an Reviewern vorbeirutschen, weil kein Assertion darauf schaut. Es folgt eine Auswahl von Kategorien, für deren Aufdeckung ScanU gebaut ist.
Visuelle Bugs ballen sich in einer Handvoll wiederkehrender Muster. Jedes wirkt für sich trivial; jedes kann produktiv gehen, ohne einen einzigen roten Test. Alle werden im nächsten ScanU-Durchlauf als Diff sichtbar — bevor der PR gemergt wird.
backdrop-filter zuständig war. In Safari rendert die Navigation plötzlich deckend, obwohl sie vorher unschärfen sollte.text-wrap: balance setzt, wirkt in Chrome klar, bleibt in Engines, die es noch nicht ausgeliefert haben, jedoch unausgewogen. Ohne einen Cross-Browser-Check ist das auf dem Entwicklerrechner unsichtbar.Der Funktionsüberblick beschreibt die Erkennungs-Primitive im Detail — perzeptive Toleranzen, maskierte Regionen, Scroll-Capture, Baseline-Branching — und zeigt, welches Primitive welche Kategorie abdeckt. Die Kurzfassung für die meisten Teams: Ändert sich etwas visuell, fällt es ScanU auf; ist es gewünscht, akzeptieren Sie es in einem Klick; ist es ungewünscht, haben Sie es erkannt, bevor andere es bemerken.
FAQ
Nächste Schritte
Der schnellste Weg zu entscheiden, ob Visual-Regression-Testing in Ihre Pipeline gehört, ist ein einziger Durchlauf gegen ein Projekt, das Sie ohnehin ausliefern. ScanU ist kostenlos im Einstieg, in wenigen Minuten in einen bestehenden CI-Job integriert und erzeugt den ersten Diff beim nächsten Commit.
Die meisten Teams starten mit einer einzigen stark frequentierten Seite in drei Browsern und drei Viewports. Das reicht, um die Plattform in Aktion zu sehen, und es reicht, um die nächste echte Regression zu fangen, die Ihre bisherige Testsuite übersehen hätte.
Von dort wächst der Umfang mit dem Vertrauen des Teams: mehr Seiten, mehr Breakpoints, komponentenbasierte Abdeckung für das Design-System, ein Pflicht-Status-Check an jedem Pull Request. Kein Kennenlern-Call, kein bespokes Onboarding, keine Mindestlaufzeit.