Visuele regressie · Cross-browserEU-hosting · AVG-conform

Lever de UI uit die u ontwierpniet degene die door CI heen glipte

ScanU is een platform voor visuele regressietests en cross-browser-screenshottests voor professionele webteams. Het legt pixelnauwkeurige renders vast van elke pagina die telt, in de browsers en viewports die uw gebruikers daadwerkelijk gebruiken, en brengt layoutwijzigingen aan het licht die unit- en end-to-end-tests stilletjes missen.

Browsers
Chromium · Gecko · WebKit
Viewports
Desktop · Tablet · Mobiel
Hosting
EU · AVG-conform
Integratie
CI/CD-ready

Wat ScanU is

Een platform voor visuele QA — geen simpel screenshot-tool

ScanU maakt van de laatste meters releasekwaliteit — precies wat uw gebruikers te zien krijgen — een signaal waar uw team mee aan de slag kan. Het platform maakt pixelstabiele screenshots van de pagina’s die u aanwijst, legt een expliciete baseline vast en vergelijkt elke volgende run met die baseline, in de browsers en op de apparaten die ertoe doen.

De meeste teams draaien al linters, typecontroles, unit-tests en end-to-end-flows. Dat alles kan groen blijven terwijl een knop twaalf pixels wegglijdt, een modal zijn padding verliest, een menu breekt in Safari of een mobiel breakpoint de hero stilletjes reflowt. Functionele tests toetsen gedrag; ze toetsen niet hoe de pagina eruitziet. Daarvoor is een screenshot-testingtool bedoeld, en dat is precies wat ScanU doet — zonder omhaal.

Onder de motorkap stuurt ScanU echte renderingengines aan — Chromium, Gecko en WebKit — tegen de URL’s of componentpreviews die u aanwijst. Elke run levert voor elk geconfigureerd paar (browser, viewport) een deterministische opname. De eerste geaccepteerde run wordt de baseline. Vanaf dat moment is elke pull request, elke deploy en elke geplande run een diff tegen die baseline: elke visuele regressie wordt zichtbaar als een beoordeelbare wijziging, zoals een code review een gewijzigde regel oppikt.

De volledige vergelijkingspipeline regelt de details die screenshot-diffing pas echt bruikbaar maken in productie: tolerantie voor anti-aliasing, stabilisatie van animaties, font-loading, maskering van dynamische content, scroll-capture en perceptuele diff-drempels — zodat een sub-pixel-hintingwijziging geen echte layoutregressie overstemt.

ScanU is gebouwd voor teams die de UI zien als een contract met hun gebruikers. Het is een tool voor visuele regressietests, een tool voor cross-browser-screenshot­ vergelijking en een diff-review-oppervlak — in één platform — tussen uw build en uw release gate.

Pixelstabiele opnames

Deterministische rendering met wachten op fonts, gepinde animaties en maskering van dynamische content — diffs weerspiegelen echte regressies, geen ruis.

Cross-browser-matrix

Chromium, Gecko en WebKit parallel aangestuurd, in de desktop-, tablet- en mobiele viewports die uw gebruikers daadwerkelijk gebruiken.

Beoordeelbare diffs

Baseline, huidige opname en gemarkeerde diff naast elkaar. Accepteren, afwijzen of baseline bijwerken — altijd met een expliciete actie, nooit in stilte.

CI/CD-native

Draait in uw bestaande pipeline. Status checks, PR-commentaar en artefactlinks verschijnen waar uw engineers al code reviewen.

Design-system-vriendelijk

Richt ScanU op Storybook, een componentsandbox of live-URL’s. Token­wijzigingen en componentrefactors krijgen een eerlijke visuele audit vóór de release.

EU-gehost

Screenshots en metadata worden opgeslagen op Europese infrastructuur, met AVG-conforme dataverwerking — geschikt voor teams met strikte eisen aan gegevenslokalisatie.

Waarom het ertoe doet

Visuele regressies zijn de bugs die uw gebruikers bereiken

De kosten van een visuele bug worden zelden in ontwikkeltijd gemeten. Ze worden gemeten in het vertrouwen van een gebruiker die uw product opent, iets subtiel verkeerds ziet en stilletjes besluit dat dit team niet op details let. Dat vertrouwen is lastig te herstellen, en het is bijna altijd goedkoper om de bug te voorkomen.

Functionele tests beantwoorden één vraag goed: «doet de knop het juiste wanneer erop geklikt wordt?». Op alles wat vóór de klik gebeurt blijven ze stil — of de knop de juiste kleur, de juiste grootte, de juiste plek heeft, of hij leesbaar is op een scherm van 360 pixels of überhaupt nog zichtbaar is na de laatste CSS-refactor. Precies in die kloof leven de meeste incidenten op releasedag.

Echte regressies die wij zien — en waarvoor ScanU gebouwd is — clusteren rond een handvol voorspelbare aanleidingen:

  • Een CSS-refactor laat de gap van een flex-container klappen op één breakpoint. Op desktop ziet de layout er identiek uit; op een tablet van 768 pixels overlappen twee cards nu.
  • Een design-token-bump schuift elke spacing-waarde twee pixels op. Niets faalt; een twaalftal zorgvuldig gebalanceerde composities zijn stilletjes niet meer in balans.
  • Een third-party-widget — een cookiebanner, een live-chat, een advertentieslot — brengt een stille update uit die de first paint verschuift. Core Web Vitals verslechteren van de ene op de andere dag zonder een code-wijziging aan uw kant.
  • Een framework-upgrade wisselt de standaard font-feature-stack. Tekst reflowt een halve regel op longform-pagina’s. Hero-CTA’s zakken plotseling onder de vouw.
  • Een feature-flag-rollout herordent het DOM. Op Safari verandert de stacking context van een modal en wordt de close-knop onklikbaar. Op Chrome ziet alles er prima uit.

Geen van deze wijzigingen laat een assertion falen. Alle breken iets voor een gebruiker. De taak van ScanU is om dit tweede soort breuken net zo makkelijk zichtbaar, reviewbaar en blokkeerbaar te maken als een rode unit-test. Wanneer de diff op de pull request verschijnt, kan een designer meewegen zoals een reviewer meeweegt op een function signature — vóór de merge, niet nadat het productie heeft bereikt.

Die verschuiving — van «hopelijk merkt iemand het in staging» naar «we reviewen een visuele wijziging zoals we een code- wijziging reviewen» — is de kernwaarde van een tool voor visuele regressietests in een moderne release-pipeline.

Cross-browser-tests

Het web dat u uitrolt, is niet het web dat u testte

Cross-browser-testen is geen nostalgiebelasting uit het IE6-tijdperk. Ook moderne engines — Chromium, Gecko en WebKit — blijven uiteenlopen op de details waarop uw layouts stilletjes leunen, en een verrassend aantal productie-incidenten is terug te voeren op een renderingverschil dat niemand controleerde.

Als een regressie alleen in één engine opduikt, betekent dat vrijwel altijd een van drie dingen: er werd een feature gebruikt die in sommige engines later wordt uitgerold dan in andere; een layout hangt af van een metric die per platform verschilt (scrollbar-breedte, font-baseline, smoothing-algoritme); of een user-agent-afhankelijke polyfill gedraagt zich in het veld net iets anders dan op de ontwikkelmachine. Alle drie zijn onzichtbaar voor een engine-agnostische testsuite.

Typische voorbeelden die we zien tijdens een cross-browser- audit:

  • Formulier-inputs — in het bijzonder date, datetime-local, select — worden in WebKit zichtbaar anders gerenderd dan in Chromium en duwen aangrenzende elementen af en toe een paar pixels op.
  • Scrollbar-rekenwerk: WebKit op macOS verbergt scrollbars standaard, Chromium op Windows reserveert hun breedte. Een pixel-perfect layout op het ene systeem is op het andere afgesneden of heeft te veel lucht.
  • Sub-pixel-font-hinting verschilt tussen engines. Een line-height die in Chromium in balans is, kan een CTA in Gecko over de vouw duwen.
  • CSS gap in flex-containers, aspect-ratio en container queries zijn op iets verschillende momenten in engines geland. Als uw build op een oudere baseline mikt, kunnen fallback-paden anders renderen dan het primaire pad.
  • Systeemvoorkeuren — prefers-color-scheme, accent-color en forced-colors op Windows — slaan per platform anders door in het DOM en zijn makkelijk over het hoofd te zien in een lokale dev-omgeving.

ScanU legt elke pagina in de door u geconfigureerde engines en viewports in één run vast, met identieke fixtures en timing-hooks, zodat de diffs die u ziet echte layoutverschillen zijn — geen bijeffect van het draaien van elke browser in een andere harness. U ziet de volledige cross-browser-mogelijkheden op de productpagina: de matrix die u configureert, is de matrix die bij elke run wordt vastgelegd.

Voor teams die design systems uitrollen, of elk product waarvan de visuele identiteit deel uitmaakt van het merk, is die matrix geen extraatje. Het is de enige manier om te weten dat wat uw klant in Safari ziet, overeenkomt met wat u in Chrome hebt afgetekend.

Voorbeeld: ScanU cross-browser-run op een marketing-homepage
BrowserViewportStatus
Chromium 1241440 × 900Komt overeen met baseline
Firefox 1261440 × 900Komt overeen met baseline
WebKit (Safari 17)1440 × 900Visuele diff · review
Chromium 124768 × 1024Komt overeen met baseline
WebKit (Safari 17)768 × 1024Layout-verschuiving gedetecteerd
Chromium 124390 × 844Nieuwe baseline in afwachting

Hoe screenshot-vergelijking werkt

Deterministische capture, eerlijke diff, expliciete review

Een visuele diff-tool is alleen zo nuttig als de signaal-ruisverhouding van de diffs die hij produceert. De capture-pipeline van ScanU is zo ontworpen dat het enige dat tussen twee runs verandert, datgene is wat u ook daadwerkelijk hebt gewijzigd — niet het decor van fonts, animaties, tijdstempels of advertentieplekken eromheen.

Elke run is een pipeline van drie stappen. Eerst navigeert ScanU in elke browser-engine naar de pagina of het component onder test, wacht op een geconfigureerde set readiness-signalen — geladen fonts, gedecodeerde afbeeldingen, rustig netwerk, een data-ready-attribuut of een eigen JavaScript-probe — en pint alle CSS-animaties op hun laatste frame. Vervolgens wordt de pagina op elk geconfigureerd viewport in dezelfde run vastgelegd, met scroll-stitching voor lange pagina’s zodat u het volledige artefact krijgt en niet alleen het zichtbare deel. Tot slot vergelijkt de pipeline de opname met de geaccepteerde baseline en produceert per (browser, viewport)-paar een resultaat: identiek, binnen tolerantie of significant anders.

De vergelijking zelf is geen naïeve pixel-diff. ScanU past een perceptueel model toe dat anti-aliasing, sub-pixel-rendering en kleurruimte-schommelingen begrijpt, zodat een kerning-eigenaardigheid in WebKit geen bug lijkt. Ook ondersteunt het expliciete maskers voor zones waarvan u weet dat ze bij elke load veranderen — live data, relatieve tijdstempels, gerandomiseerde content, carrousels — zodat die gebieden nul ruis toevoegen aan de diff.

Zodra een echte wijziging opduikt, toont het platform drie gesynchroniseerde panelen: de baseline, de huidige opname en een diff-overlay die precies markeert wat er is bewogen. Per wijziging wordt één beoordeelbare beslissing vastgelegd — accepteren, afwijzen of baseline updaten — en die beslissing wordt deel van de projectgeschiedenis. Geen stille drift en geen automatische acceptatie: de baseline beweegt pas als een geautoriseerd persoon dat uitdrukkelijk zegt.

Dezelfde pipeline kan vanuit drie ingangspunten worden aangestuurd: tegen live-URL’s (productie, staging, PR-previews), tegen een statische site of gebouwde asset- bundle, of tegen componentpreviews in een Storybook-achtige sandbox. De meeste teams gebruiken het eerste als release gate, het tweede voor deploy-artefacten en het derde voor werk aan het design system — alle drie voeden dezelfde baseline-opslag.

Baseline · Huidig · Diff — de drie panelen van een review
Baseline

De laatst geaccepteerde render voor deze pagina, browser en viewport. Bevroren tot een reviewer hem expliciet bijwerkt.

Huidig

De opname van deze run. Dezelfde fixtures, dezelfde timing-hooks, hetzelfde viewport — alleen de code onder test is gewijzigd.

Diff-overlay

Amberkleurig gemarkeerde gebieden tonen waar de huidige render verder van de baseline afwijkt dan de geconfigureerde tolerantie toestaat.

Voor wie ScanU is

Teams die de UI behandelen als een release-bepalend oppervlak

ScanU is gebouwd voor teams wier werk wordt beoordeeld op wat de gebruiker ziet. Dat is een bredere groep dan het klinkt — niet alleen designers en frontend-engineers, maar iedereen wiens release-beslissingen ervan afhangen dat een UI op een bepaalde browser, bij een bepaald viewport, op een bepaalde dag correct is.

Frontend- en full-stack-engineers gebruiken ScanU als laatste etappe in een pull-request-pipeline: de build is groen, de unit-tests slagen, de end-to-end-suite is tevreden — en vervolgens bevestigt een visuele diff dat de wijziging overeenkomt met wat de designer in gedachten had, of brengt een regressie aan het licht die niemand had opgepikt door een patch door te lezen. Het resultaat is minder tijd aan post-deploy-brandblussen en meer tijd aan het werk dat het product echt vooruit helpt.

QA-engineers krijgen een testlaag die schaalt zonder selectors te herschrijven. Een nieuwe pagina aan de visuele suite toevoegen is een URL en een baseline — geen week met broze XPath. De laag die UI-regressies opvangt wordt eersterangs onderdeel van de testpiramide in plaats van een Slack-bericht van een gebruiker achteraf.

Design-system- en platformteams draaien ScanU tegen elke componentsandbox in hun bibliotheek. Wanneer een token verandert, krijgt elk component dat ervan afhangt automatisch een visuele audit. Wanneer een component wordt gerefactord, krijgen de consumerende projecten een diff die ze kunnen reviewen voordat de nieuwe versie landt. Zo voorkomt een design system dat stille regressies zich over jaren opstapelen.

Product- en engineering-leaders gebruiken het review-oppervlak als bewijs. Release notes kunnen een link bevatten naar de geaccepteerde visuele diff voor elke release. Incident-reviews kunnen vastleggen of een regressie is opgepikt, gemist of expliciet geaccepteerd. In de loop van de tijd wordt het platform een logboek van hoe de UI is geëvolueerd en wie elke stap heeft afgetekend.

Use cases

Van agencyoplevering tot design-system-governance

Hetzelfde platform bedient zeer uiteenlopende workflows. De rode draad is dat elk van deze teams UI oplevert op een cadans waar hun klanten om geven, en elk een manier nodig heeft om in één oogopslag te zien of de UI er nog steeds uitziet zoals het hoort.

Wat de vorm van het team ook is, ScanU wordt doorgaans om een van vijf redenen ingezet: een recent productie-incident dat een visuele regressie zou hebben afgevangen; een design- system-migratie waarvan de impact-omvang onmogelijk handmatig te auditen is; een CI/CD-workflow die een release gate nodig heeft die rijker is dan «tests geslaagd»; een klantgerichte oplevering die voor/na-bewijs vraagt; of een compliance-positie die kiest voor EU-gehoste test-tooling. Een gedeelde CI/CD-integratie zit achter alle vijf — dezelfde pipeline doet het werk, ongeacht of hij door een PR, een merge of een nachtelijke planning wordt getriggerd.

Digitale agencies

Lever klanten wekelijks een visuele delta per site. Voor/na-bewijs in elke sprint, op elke browser uit het contract, in één rapport.

QA en release engineering

Voeg een visuele laag toe aan de testpiramide. Nieuwe pagina’s komen met een URL en een baseline in de suite — geen broze selectors, geen zelfgebouwde screenshot-scripts om te onderhouden.

Frontend-teams

Screenshot-diffs verschijnen inline op de pull request. Layoutregressies worden in review opgevangen, niet in productie en niet in een Slack-draad van een klant.

Startups en scale-ups

Snel bewegen zonder de homepage te slopen. Een deterministisch vangnet dat de marketingsite pixelstabiel houdt door redesigns, A/B-tests en token-migraties.

Design systems

Visuele dekking op elke componentsandbox. Token-wijzigingen, theme-swaps en componentrefactors krijgen automatisch een audit voordat de bibliotheek publiceert.

Responsive design

Valideer breakpoints op mobiel, tablet en desktop in dezelfde run. Responsive tests worden van een screenshot-klus een review-stap.

CI/CD en release-vertrouwen

Een visueel signaal dat uw pipeline al kan lezen

Release-vertrouwen is geen gevoel. Het is een pipeline die de waarheid vertelt over wat er wordt uitgerold — inclusief de delen waar uw test runner geen mening over heeft. ScanU koppelt zich aan die pipeline als status check, PR-commentaar en opgeslagen artefact, linkbaar vanuit elke incident-review.

Het integratiemodel is bewust saai: de capture-stap van ScanU draait in dezelfde job die al uw tests uitvoert; hij meldt een pass, een review-needed of een fail op de PR; en die status wordt behandeld als elke andere verplichte check. Teams weten al hoe ze groen, geel en rood uit hun pipeline moeten lezen — een visuele-regressiecheck in dat ritme voegt een nieuwe veiligheidsdimensie toe zonder een nieuw mentaal model te eisen.

Onder de motorkap is ScanU ontworpen voor de realiteit van moderne CI/CD:

  • Deterministische runs. Dezelfde pagina, vastgelegd op dezelfde browser, bij hetzelfde viewport, met dezelfde stabilisatie-hooks, produceert dezelfde bytes. Dat is de voorwaarde om diffing iets te laten betekenen.
  • Parallellisme. Browsers en viewports draaien parallel, grote matrices worden over runners verdeeld. Een 60-pagina-site op drie engines en drie viewports is een check van een paar minuten, geen nacht- batch.
  • Eerlijke statussen. Een nieuwe pagina introduceert een openstaande baseline, geen fail. Een bekend flakey gebied wordt gemaskeerd, niet genegeerd. Een echte regressie is een reviewverzoek met een link — geen muur van pixel-ruis.
  • Vriendelijk voor preview-omgevingen. PR-previews krijgen hun eigen tijdelijke baselines die pas bij merge en acceptatie opklimmen naar de hoofdbaseline. Niets lekt tussen branches.
  • Artefact op de eerste plaats. Elke run slaat de volledige set baseline-, huidige en diff-beelden op met een stabiele URL. Release notes, incident-reports en audits kunnen de exacte visuele staat refereren die werd uitgerold.

De stapsgewijze CI/CD-integratiegids beschrijft de specifieke bedrading voor GitHub Actions, GitLab CI, Bitbucket Pipelines en zelf-gehoste runners. Het gangbare geval is één extra job; het geavanceerde geval is een matrix van omgevingen die een baseline door een gefaseerde release heen laat promoveren.

AVG · EU-hosting · privacy

Een testplatform dat respecteert waar uw data woont

Testartefacten zijn data. Screenshots kunnen per ongeluk persoonsgegevens bevatten die op een pagina stonden — een naam in de navigatiebalk, een e-mailadres in een profielmenu, een ordernummer op een bevestigingsscherm. Een verantwoord platform voor visuele tests behandelt die artefacten met dezelfde zorg als de productiedata die ze weerspiegelen.

ScanU wordt in de Europese Unie gebouwd en gehost, met opslag en verwerking op in de EU geopereerde infrastructuur. Voor teams met verplichtingen rond gegevenslokalisatie — gereguleerde sectoren, publieke afnemers, privacygevoelige B2B-klanten — is dat vaak een procurement-eis, geen voorkeur. ScanU is ontworpen om aan die eis te voldoen zonder concessies aan productmogelijkheden.

Uit die houding volgen een paar bewuste ontwerpkeuzes:

  • Dataminimalisatie. Het platform bewaart screenshots en de metadata die nodig zijn om te diffen; het zuigt geen page source, cookies of request bodies op die niets aan de diff bijdragen.
  • Maskering standaard in gevoelige contexten. Velden waarvan bekend is dat ze persoonsgegevens bevatten — account-headers, e-mailadressen, ordernummers — kunnen worden gedeclareerd als gemaskeerde gebieden, zodat de vastgelegde afbeelding al is geredigeerd op het moment dat hij naar de opslag wordt geschreven.
  • Toegangscontrole. Wie een diff mag zien is een eersterangs recht. Reviewers, contributors en externe auditors krijgen expliciete rollen, en elke baseline- update wordt gelogd met de persoon die hem heeft geautoriseerd.
  • Transparantie over sub-verwerkers. De lijst van sub-verwerkers is gepubliceerd en geversioneerd. Geen verborgen analytics-pipeline ziet uw screenshots.
  • Bewaartermijn die u beheert. Baselines en diff-artefacten worden bewaard voor de horizon die u instelt; oude runs verlopen automatisch in plaats van zich stilletjes op te hopen.

Voor het volledige privacybeeld — sub-verwerkers, regionale hosting, verwerkersovereenkomst, bewaartermijnen — zie de AVG- en gegevensverwerkings­documentatie. Voor de meeste teams telt de korte versie: uw screenshots blijven in de EU, en het platform is zo gebouwd dat ze daar blijven.

Het verschil

Waarom ScanU geen generieke testtool is

Visual testing is een drukke categorie. Een groot deel van wat ScanU onderscheidt, zijn de dingen die het weigert te doen — de sluipweggetjes die het niet neemt, de ruis die het niet doorstuurt naar uw reviewqueue, en de meningen die het heeft over hoe een diff gereviewd hoort te worden.

Generieke screenshot-tools worden vaak geleverd als een library die u aan uw test runner plakt, waarna u mag worstelen met timing, fonts, animaties en de eeuwige vraag of een verschuiving van één pixel een echte bug is of een afrondingsartefact. ScanU neemt een stevigere positie in: als het platform geen deterministische opname kan produceren, is dat een probleem van het platform — niet van u. Daarom zijn readiness-signalen, font loading, animation pinning, scroll stitching, perceptuele diffing en gemaskeerde gebieden ingebouwd en niet aangebouwd.

De pricing volgt dezelfde logica. Voor een redelijk team — een paar dozijn pagina’s, drie engines, drie viewports, één pipeline — zou de kosten van visuele dekking geen post moeten zijn die u op een budgetbespreking moet verdedigen. De volledige prijspagina is in duidelijke cijfers geschreven: wat u in elk plan krijgt, wat als run telt en waar het plafond ligt. Geen maatwerkofferte voor teams die gewoon de UI willen uitrollen die ze hebben ontworpen.

Uitgesproken capture, geen losse library

Stabilisatie, font-readiness, animation pinning en scroll stitching zijn platformfuncties — geen snippets die u in uw eigen repo onderhoudt.

Perceptuele diff, geen pixelteller

De diff-engine begrijpt anti-aliasing en sub-pixel-rendering, zodat niet-zichtbare micro-verschuivingen de regressies die er echt toe doen niet overstemmen.

Review als eersterangs actie

Baselines bewegen alleen wanneer een geautoriseerd persoon de wijziging accepteert. Elke update is auditbaar. Geen stille drift.

Standaard EU-gehost

Screenshots, metadata en review-historie staan op EU-infrastructuur. Geen opt-in nodig voor teams die aan die houding gebonden zijn.

Wat ScanU afvangt

De regressies die stilletjes productie bereiken

De meeste bugs die een platform voor visuele regressie afvangt, zijn niet exotisch. Het zijn de kleine, ondramatische, makkelijk te missen breuken die langs reviewers glippen omdat geen enkele assertion ernaar kijkt. Hieronder een greep uit de categorieën die ScanU specifiek aan het licht is gebouwd om te brengen.

Visuele bugs clusteren in een handvol terugkerende patronen. Elk lijkt in isolatie triviaal; elk kan in productie belanden zonder één rode test. Allemaal worden ze als diff zichtbaar bij de volgende ScanU-run, vóór de PR wordt gemerged.

  • Spacing-verschuivingen. Een gap-utility gaat van 16 naar 20 pixels; een kaartgrid dat eerst rustig ademde, voelt op mobiel plots opgepropt. De HTML is onveranderd; de layout niet.
  • Gebroken layouts na deploy. Een upgrade van de build-pipeline laat een PostCSS-plugin vallen die voor het autoprefixen van backdrop-filterzorgde. Op Safari rendert een navigatiebalk plots ondoorzichtig waar hij eerder vervaagde.
  • CSS-regressies door specificiteits­verschuivingen. Een gewijzigde volgorde van Tailwind-klassen, een nieuwe utility-laag of een gerefactorde cascade verandert subtiel welke regel wint — een kop verliest zijn accentkleur op een handvol pagina’s.
  • Falende responsive breakpoints. Een nieuwe nav-item overloopt het tablet-breakpoint en komt op een tweede regel, waardoor de hero op iPads en grote Android-telefoons onder de vouw zakt.
  • Renderingverschillen tussen browsers. Een ontwerp dat op text-wrap: balance leunt, is strak op Chrome maar blijft ongebalanceerd in engines die het nog niet hebben uitgerold. Zonder cross-browser-check is dat onzichtbaar op de machine van de developer.
  • Font- en typografiedrift. Een font- leverancier wisselt een subset, gewichten verschuiven honderd gram, en elke paragraaf van een marketingsite reflowt een kwart regel. De tekstdichtheid verandert; geen diff in het repository verklaart het.
  • Regressies bij third-party-widgets. Een vendor van consent-banners brengt een update uit die de accept-knop op donkere thema’s onzichtbaar maakt. Uw conversie daalt; uw tests slagen.
  • Design-system-drift. Een knopcomponent wijzigt de offset van zijn focus-ring. Twintig consumers hangen aan dat component. Twintig pagina’s zien er nu subtiel anders uit. Niemand reviewt twintig pagina’s met de hand.
  • Visuele bugs die naar productie ontsnappen. Alles hierboven, vermenigvuldigd met de routes en breakpoints die in een gegeven week niemand opent, over de browsers die niemand in het team dagelijks gebruikt.

Het feature-overzicht gaat dieper in op de detectie-primitieven — perceptuele toleranties, gemaskeerde gebieden, scroll- capture, baseline-branching — en laat zien hoe elk aansluit op een van de categorieën hierboven. Voor de meeste teams luidt de korte versie: verandert er iets visueel, dan merkt ScanU het; is het gewenst, dan accepteert u het met één klik; is het dat niet, dan hebt u het eerder opgevangen dan wie dan ook.

FAQ

Vragen die het waard zijn te beantwoorden voordat u een visual-testing-tool kiest

Volgende stappen

Vang regressies af voordat uw gebruikers ze zien

De snelste manier om te beslissen of visuele-regressietesten in uw pipeline thuishoren, is hem eenmaal te draaien tegen een project dat u al uitrolt. ScanU is gratis om te starten, kost enkele minuten om aan een bestaande CI-job te koppelen en produceert zijn eerste diff bij de eerstvolgende commit.

De meeste teams beginnen met één pagina met hoge trafiek op drie browsers en drie viewports. Genoeg om het platform aan het werk te zien, en genoeg om de volgende echte regressie op te vangen die uw huidige testsuite zou hebben gemist.

Vanaf daar groeit de scope met het vertrouwen van het team: meer pagina’s, meer breakpoints, dekking op componentniveau voor het design system, een verplichte status check op elke pull request. Geen kennismakingsgesprek, geen maatwerk- onboarding, geen minimumtermijn.