Watcher-pakket vrijgavennotities
Vrijgavennotities die de veranderingen in het Watcher-pakket beschrijven voor versie 3.0.0 en later
4.5.1 (16 juli 2026)
-
Kenmerken
- Ondersteuning voor Node.js 20 is beëindigd, aangezien deze het einde van zijn levensduur heeft bereikt. Axe Watcher vereist nu Node.js 22.11.0 of later. (JavaScript/TypeScript-integraties)
- Microsoft Edge (Chromium) wordt nu ondersteund met de Java Selenium-integratie. Voorheen was Edge beschikbaar met alle integraties behalve Java Selenium. (Java Selenium-integratie)
-
**Bugfixes**
- Een probleem opgelost in de Cypress-integratie waarbij vastgelegde screenshots niet konden worden geüpload naar Axe Developer Hub. (Cypress-integratie)
- Een probleem opgelost waarbij het uitvoeren van meerdere tests tegelijk met verschillende project-ID's kon zorgen dat de configuratie van de ene run de andere overschreef. (JavaScript/TypeScript-integraties)
4.5.0 (6 juli 2026)
- Kenmerken
- Axe Watcher ondersteunt nu officieel Microsoft Edge (Chromium) als testbrowser, naast Chrome for Testing, Chrome en Chromium. Edge is beschikbaar met de JavaScript/TypeScript-integraties en met Java Playwright; het wordt niet ondersteund met Java Selenium.
4.4.0 (12 juni 2026)
-
Kenmerken
- Scans bevatten nu automatisch het bestands pad en de naam van de oorspronkelijke test in Axe Developer Hub. (Playwright Test, Cypress, en WebdriverIO-integraties)
- De Java SDK ondersteunt nu Playwright naast Selenium. Het
com.deque.axe_core:watcher-artefact wordt geleverd met Playwright-ondersteuning. Zie de Java met Playwright documentatie voor integratie-instructies. - De Java/Playwright-integratie legt schending screenshots vast. Screenshots worden op de server geüpload en lokaal opgeslagen wanneer een
screenshotDiris geconfigureerd. - Toegevoegd
setScreenshotDir()aanAxeWatcherOptions(Java). Gebruik dit om een lokale directory te specificeren voor het opslaan van screenshots. Screenshots worden lokaal opgeslagen zelfs wanneer de server onbereikbaar is. - Toegevoegd
setTestContext()aan zowelAxeWatcherController(Selenium) alsAxeWatcherPlaywrightController(Playwright) in de Java SDK. Gebruik dit om schendingen toe te wijzen aan specifieke tests in Axe Developer Hub. - Lokaal opgeslagen screenshots gebruiken nu een met timestamp voorzien bestandsnaam (
YYYYMMDDTHHmmssSSS-{id}.png), zodat bestanden deterministisch sorteren op basis van capture-tijd. - Toegevoegd
elementInternalsconfiguratie-optie. StelelementInternals: trueinAxeConfiguration(JavaScript/TypeScript) of roepsetElementInternals(true)aan opAxeWatcherOptions(Java) om ElementInternals toegankelijkheidsdata op te nemen in scans. Dit vermindert valse positieven op pagina's die aangepaste elementen metattachInternals()gebruiken. Vereist axe-core versie 4.12.0 of later. - Geüpdatet axe-core naar versie 4.12.1.
-
**Bugfixes**
- Een probleem opgelost waarbij bij het aanroepen van
analyze()(ofaxeWatcherAnalyze()in Cypress) een dubbele scanresultaat kon worden geüpload aan het einde van de test. - Een probleem opgelost waarbij het gelijktijdig binnenkomen van twee flush-verzoeken ervoor kon zorgen dat scanresultaten meer dan eens werden geüpload.
- Een probleem opgelost waarbij Watcher in elk kindframe draaide, wat dubbele paginastaten veroorzaakte die werden geüpload. Watcher draait nu alleen in het bovenste frame. Toegankelijkheidsdekking van iframe-inhoud is ongewijzigd; axe-core draait nog steeds in alle frames en het bovenste frame koppelt hun resultaten bij elkaar.
- Prestaties verbeterd voor tests die veel paginastaten vastleggen. Resultatenopslag schrijft nu in constante tijd per scan in plaats van te groeien met het totale aantal verzamelde resultaten.
- Verbeterde validatie voor
setHeadless()ensetChannel()in de Java/Playwright-integratie. Verkeerd geconfigureerde combinaties gooien nuIllegalArgumentExceptionmet een bruikbare boodschap in plaats van stil te falen of onverwacht gedrag te vertonen. - Een probleem opgelost waarbij uitgesloten URL-patronen niet altijd werden gerespecteerd als er een flush-verzoek binnenkwam voordat Watcher zijn configuratie had geladen.
- Een probleem opgelost waarbij bij het aanroepen van
4.3.0 (12 mei 2026)
- **Bugfixes**
- Een raceprobleem opgelost in de Java-integratie waarbij het switchen van de browsercontext naar een iframe onterecht scans zou activeren, wat leidde tot extra resultaten die werden vastgelegd.
- Axe-core bijgewerkt naar versie 4.11.4.
4.2.0 (6 april 2026)
-
Kenmerken
- De
git-optie uitgebreid om het verstrekken van expliciete Git-metadata te ondersteunen. In JavaScript/TypeScript accepteert degit-eigenschap inAxeConfigurationnu eenGitConfig-object naast een booleaanse waarde. In Java heeftAxeWatcherOptionseen nieuwesetGitInfo(AxeWatcherGitInfo)-methode. Wanneer eenGitConfig- ofAxeWatcherGitInfo-object wordt verstrekt, wordt automatische Git-detectie overgeslagen. Alle velden zijn optioneel. Dit is nuttig wanneer tests draaien in een repository die gescheiden is van de repository onder test, of in CI-omgevingen waar Git-auto-detectie onbetrouwbaar is. Zie voor meer informatie. voor meer informatie.
- De
-
**Bugfixes**
- Een probleem opgelost waarbij het aanroepen van
flush()terwijl resultaten nog werden verwerkt, onvolledige resultaten kon produceren. (JavaScript/TypeScript-integratie) - Een probleem opgelost in de Java/Selenium-integratie waarbij uitzonderingen van
findElement()niet correct werden weergegeven, waardoor expliciete wachttijden direct faalden in plaats van te wachten tot het element verscheen. - De betrouwbaarheid verbeterd in de Java-integratie: Watcher probeert nu automatisch tot drie keer toe resultaten naar de server te sturen wanneer een tijdelijke fout wordt aangetroffen.
- Een probleem opgelost in de Java-integratie waarbij het doorgeven van
nullaan bepaalde configuratie-instelmethoden een niet-afgehandelde uitzondering veroorzaakte. Deze methoden gooien nu eenIllegalArgumentExceptionmet een beschrijvende boodschap.
- Een probleem opgelost waarbij het aanroepen van
4.1.0 (24 februari 2026)
-
Kenmerken
- Watcher scant nu automatisch alle iframes met dezelfde oorsprong. (De Cypress-integratie had dit gedrag al.) Dit geldt voor de Playwright-, Puppeteer-, WebdriverIO-, WebDriverJS- en Java Selenium-integraties.
- Ondersteuning toegevoegd voor de RGAA v4 (Franse toegankelijkheidsnorm). Stel
accessibilityStandard: 'RGAAv4'inConfigurationOverrides(JavaScript/TypeScript) of gebruikConfigurationOverrides.AccessibilityStandard.RGAAV4(Java). Vereist axe-core versie 4.11.0 of later. De globale configuratie bepaalt of deze standaard voor uw organisatie is toegestaan. - Toegevoegd een
git-optie aanAxeConfiguration(JavaScript/TypeScript) enAxeWatcherOptions(Java) om te regelen of Git-informatie wordt verzameld. Stel ingit: false(JavaScript/TypeScript) of roepsetGit(false)aan (Java) om Watcher zonder het verzamelen van Git-data te laten draaien. De standaardwaarde istrue(Git-info wordt verzameld). - Oplossingen
-
**Bugfixes**
- Een probleem opgelost in de Java-integratie waarbij een aangepast Chrome-binariepad dat was ingesteld via
setBinary()op hetChromeOptions-object zou worden overschreven wanneer het werd doorgegeven aanconfigure().
- Een probleem opgelost in de Java-integratie waarbij een aangepast Chrome-binariepad dat was ingesteld via
Watcher 4.0.0 is een grote release van het Watcher-pakket.
Watcher 4.0.0 is een grote release van het Watcher-pakket.
-
Kenmerken
- Proxy-ondersteuning toegevoegd. Zie Watcher gebruiken met een proxy voor meer informatie. (HTTP-proxy-implementatie vereist Node.js versie 20.18.1 of later).
- De versie van axe-core bijgewerkt naar 4.11.0.
- Ondersteuning toegevoegd voor Node.js versie 24.
-
**Bugfixes**
- Een probleem opgelost bij het rapporteren van Git-informatie wanneer een GitLab-pipeline wordt gebruikt.
- Foutafhandeling verbeterd voor alternatieven van Chrome zoals Chrome voor testen en Chromium.
- Op de juiste manier omgaan met lege Git-gegevens.
- Alle door de gebruiker verstrekte Chrome-opties voor WebdriverIO opnemen.
-
**Breaking Changes**
-
Watcher (voor TypeScript en JavaScript) gebruikt nu nieuwe paden voor het importeren van het pakket. Zie de instructies voor uw browserintegratiepakket om bijgewerkte codevoorbeelden te bekijken.
Browser Automatiseringsplatform Oud Pad Nieuw Pad Cypress @axe-core/watcher@axe-core/watcher/cypress/configCypress Commando's @axe-core/watcher/dist/cypressCommands@axe-core/watcher/cypress/supportPlaywright @axe-core/watcher@axe-core/watcher/playwrightPlaywright Test @axe-core/watcher@axe-core/watcher/playwright-testPuppeteer @axe-core/watcher@axe-core/watcher/puppeteerWebdriverIO @axe-core/watcher@axe-core/watcher/wdioWebdriverIO Testrunner @axe-core/watcher@axe-core/watcher/wdioWebDriverJS @axe-core/watcher@axe-core/watcher/webdriverJavaScript-voorbeeld voor WebDriverJS:
const { webdriverConfig, wrapWebdriver, WebdriverController } = require('@axe-core/watcher/webdriver') -
De onjuiste specificatie van
LaunchOptionsin TypeScript voor Playwright vervangen door een nieuw type genaamdLaunchPersistentContextOptions, dynamisch geëxtraheerd uitlaunchPersistentContext. Gebruikers moeten eventuele niet-ondersteunde opties die zij gebruikten metLaunchOptionsverwijderen; anders zal hun TypeScript niet compileren in strikte modus.
-
3.23.0 (1 augustus 2025)
- Verbeterde timeout- en retry-logica bij het versturen van resultaten naar de server (voor Watcher voor JavaScript en TypeScript).
- Een waarschuwing toegevoegd over de
--load-extensions-optie met Chrome versie 139 en later (zowel voor de JavaScript/TypeScript-implementatie als de Java-implementatie). - Rapporteer een mislukking als het maximumaantal pogingen voor het uploaden van mislukte resultaten wordt overschreden (
Flush: Failed. Maximum retries reached). - Problemen met het omgaan met Chrome voor testen en Chromium opgelost.
- Loggen of het maximum aantal herhalingen is bereikt.
- Componenttests geïmplementeerd in de Cypress-integratie.
3.22.0 (1 juli 2025)
- Zorg ervoor dat
runOptionsgeennull-waarden bevat, wat een stille mislukking in de Java-integratie veroorzaakte. - Zorg ervoor dat het licentiebestand voor de Java-implementatie wordt gekopieerd naar de
META-INF-directory. - Een probleem opgelost waarbij uitgesloten URL-patronen niet correct werden gekopieerd in Java.
- De methode voor het bepalen van de standaard Git-branch verbeterd.
3.21.0 (23 mei 2025)
- Java Watcher vrijgegeven.
- Een fallback-methode geïmplementeerd om de standaard Git-branchnaam vast te stellen.
- Een probleem opgelost met de Cypress-integratie waarbij lange
wait()-tijden dubbele paginastaten of testmislukking zouden veroorzaken. - Een probleem opgelost waarbij
runOptions.runOnlyniet goed werkte met de Cypress-integratie.
3.20.2 (17 april 2025)
- Een probleem verholpen met de timeout-foutberichten die de verkeerde parameter van verandering specificeerden. (Bijvoorbeeld, de gebruiker werd gevraagd om
timeoutStartte veranderen in plaats van de juistetimeout.start-waarde.)
3.20.1 (25 maart 2025)
-
Kenmerken
- Toestaan van het selecteren van eerdere versies van axe-core.
- Het doorspoelen van resultaten naar de server robuuster gemaakt.
-
Bugfixes
- Een probleem opgelost bij het consolideren van globale configuraties met gebruikersconfiguratie-overschrijvingen.
- Een racecondition opgelost in de Cypress-integratie.
- Een probleem opgelost met de Cypress-integratie waarbij experimentele regels niet waren ingeschakeld.
- Een probleem opgelost waarbij het inschakelen van de EN 301 549-standaard niet werd nagekomen.
- Een probleem opgelost met
configurationOverridesals er geen waarden waren ingesteld. - Extra validatie toegevoegd voor Playwright en Playwright Test.
- Een probleem opgelost bij het proberen te selecteren van versies van axe-core zonder een patchversienummer.
- De logica voor het samenvoegen van gebruikersconfiguraties met globale configuraties verbeterd.
- Verbeterde afhandeling van axe-core versie wanneer geen
configurationOverridesis geleverd. - Verbeterd foutbericht voor een niet-toegestane toegankelijkheidsnorm in
configurationOverrides. - Foutmeldingen aangepast om een link naar de probleemoplossingsdocumentatie op te nemen.
- Betere foutafhandeling wanneer resultaten naar de server werden gestuurd, wat eerder ervoor zorgde dat de testsuite stopte.
3.20.0
- Niet uitgebracht
3.19.1 (25 februari 2025)
- Een probleem opgelost waarbij het oproepen van een omhulde methode (zoals
click()) na het wisselen van de browsercontext naar een kinderframe metswitchToFrame()(WebdriverIO of WebDriverJS) ofswitchTo().frame()(Java Selenium) een analyse-timeout veroorzaakte. Axe Watcher slaat nu de analyse over wanneer het niet in het bovenste frame is. Zie Geen paginastatussen vastgelegd na overschakelen naar een child-frame voor meer informatie. - Zorg ervoor dat testsuites met
--disable-extensionsWatcher niet uitschakelen.
3.19.0 (20 januari 2025)
- Verbeterd het foutbericht met Playwright en Playwright Test versies 1.49.0 of hoger bij gebruik van de
headless-parameter wanneer dechannel-parameter is ingesteld opfirefox. (Alleen dechromium- ofchrome-kanalen worden ondersteund met volledig hoofdmodus of de nieuwe hoofdloze modus.) - Verbeterde versiecontrole voor axe-core.
- Ondersteuning voor globale configuraties.
3.18.0 (18 december 2024)
- Verschillende problemen met sessiebehandeling opgelost, waardoor onjuiste of lege resultaten op de website konden verschijnen.
- Ondersteuning toegevoegd voor nieuwe Chromium headless in Playwright versies >= 4.91. Zie Probeer nieuwe Chromium headless in de release-opmerkingen van Playwright 4.91.
- Aangepaste timeout-waarden toegevoegd om gebruikers controle over sessiebehandeling te geven.
3.17.2 (12 december 2024)
-
Kenmerken
- Handmatige modus toegevoegd aan Watcher.
- Het uitvoeren van een analyse op een niet-ondersteund protocol (elk protocol anders dan https, http of file) of op de about:blank-pagina zal resulteren in een foutmelding.
- Nu geeft Watcher een foutmelding als het niet geconfigureerd is voordat het wordt gebruikt.
-
Bugfixes
- Een probleem opgelost in Playwright Test waarbij sessies werden hergebruikt, waardoor resultaten werden overschreven.
- Verschillende andere problemen met het maken en beheren van sessies opgelost.
- In handmatige modus markeert het aanroepen van de
start()-methode van de controller nu de huidige paginaboom als schoon, zodat geen paginastaat wordt vastgelegd. - In handmatige modus is een probleem opgelost waarbij soms een aanvullende paginastaat werd vastgelegd wanneer
flush()werd opgeroepen. - Een probleem opgelost dat een ontbrekende paginastaat veroorzaakte wanneer
cy.axeWatcherAnalyze()werd opgeroepen nadatcy.click()werd opgeroepen zonder eency.wait()-oproep. - Nu een bijgewerkte LICENSES-3RD-PARTY.md-bestand opnemen bij het @axe-core/watcher pakket.
- De controller methode
stop()analyseert nu de pagina als het DOM is veranderd voordat de automatische modus wordt uitgeschakeld. - Gedrag van Watcher veranderd zodat, als Watcher in de handmatige modus is, de pagina niet geanalyseerd wordt als de controller methode
stop()wordt aangeroepen. - Een probleem opgelost in de Playwright-integratie waardoor omwikkelde methoden onjuiste typen retourneerden.
- Een probleem opgelost dat verhinderde dat
runOptionsslechts één optie accepteerde.
3.17.1
- Niet uitgebracht
3.17.0
- Niet uitgebracht
3.16.1 (25 oktober 2024)
- Licenties van derden opgenomen.
3.16.0 (26 september 2024)
- Een transitief afhankelijkheidsprobleem opgelost met betrekking tot Cypress-opdrachten.
3.15.2 (13 september 2024)
- Ondersteuning toegevoegd voor WebdriverIO versie 9 (terwijl ondersteuning voor WebdriverIO versies 7 en 8 behouden blijft).
3.15.1
- Overgeslagen (er was geen releasekandidaat)
3.15.0
- Niet uitgebracht
3.14.3 (5 september 2024)
- Geen voor de gebruiker zichtbare wijzigingen
3.14.2 (29 augustus 2024)
- Een fout opgelost bij het benaderen van de timeoutwaarde in Cypress.
- Voor Cypress nu een uitzondering opwerpen als de gebruiker probeert Watcher te gebruiken zonder eerst
cypressConfig()aan te roepen. - Een fout opgelost die onder bepaalde omstandigheden in Cypress verscheen bij het importeren van de
osmodule. - Toegevoegd
buildIDaanAxeConfigurationvoor parallelle testruns. sessionIDinAxeConfigurationverouderd ten gunste vanbuildID.- Een probleem opgelost dat ervoor zorgde dat een extra paginastatus werd vastgelegd met Puppeteer vanwege de verwerking van
authenticate(). - Prestatieverbeteringen in Axe Watcher door wijzigingen in codeverduistering.
3.14.1
- Niet uitgebracht
3.14.0
- Niet uitgebracht
3.13.1 (19 juli 2024)
- URLs van de analysescan uitsluiten met behulp van de
excludeUrlPatternsoptie. ZieexcludUrlPatterns.
3.13.0
- Niet uitgebracht
3.12.0 (16 juli 2024)
- De afhandeling van het opnieuw monteren van componenten in Cypress verbeterd.
- Zorg ervoor dat Watcher geladen kan worden in WebdriverIO versie 7.
- Puppeteer
locatorondersteuning toegevoegd. - Configuratie van
runContextenrunOptionsvoor axe-core toegevoegd. ZierunContextenrunOptions.
3.11.1 (26 juni 2024)
- Een probleem opgelost waarbij retourwaarden van externe
setupNodeEventshandlers in Cypress niet werden doorgegeven. - Gedragswijziging om het laden van de Chrome-extensie van Cypress mogelijk te maken.
3.11.0 (17 juni 2024)
- Een probleem aangepakt waarbij het ontkoppelen en opnieuw koppelen van componenten ervoor zorgde dat toegankelijkheidsscans in Cypress vastliepen.
- De browserdetectielogica versoepeld om fouten te voorkomen, zelfs bij gebruik van ondersteunde browsers.
- Verwijderde bestandssysteem schrijfacties bij het flushen van resultaten in Cypress.
3.10.0 (16 mei 2024)
- Een probleem in Cypress opgelost waarbij het
configobject dat terugkeert vansetupNodeEventsniet correct werd doorgegeven en gemaakte wijzigingen eraan verloren gingen. - De implementatie van geproxiede functies (voor Playwright Test) die geleid hadden tot een fout met
Locatorobjecten: kan alleen worden gebruikt met een Locator-object. - Twee nieuwe Playwright-functies van de release 1.43.1 ingepakt.
3.9.0 (30 april 2024)
- Achterwaarts compatibele typen toegevoegd voor Puppeteer versie 20.
- Voor Cypress zijn
axeAnalyze(),axeFlush(),axeStart()enaxeStop()verouderd. Vervangen dooraxeWatcherAnalyze(),axeWatcherFlush(),axeWatcherStart()enaxeWatcherStop(). - Een
TypeErroropgelost bij bepaalde Puppeteer versie 21 (en later) hooks.
3.8.0 (9 april 2024)
- De uitgegeven JavaScript bijgewerkt om te richten op ECMAScript 2018 (ES2018) in plaats van ECMAScript 2015 (ES2015).
3.7.0 (21 maart 2024)
- Geen voor de gebruiker zichtbare wijzigingen
3.6.0 (7 maart 2024)
- In de Cypress-integratie, voorkom
after:rungebeurtenissen als er geen tests zijn uitgevoerd. - Het download-URL-formaat voor Chromedriver gewijzigd omdat het Chromedriver-team naar een nieuwe hostoplossing is overgestapt. Affecteert WebdriverIO.
3.5.0 (25 januari 2024)
- Een probleem opgelost waarbij het aanroepen van Playwright's
Page.goto()methode onjuist twee paginastaten zou vastleggen. - Een probleem in de Cypress-integratie opgelost waardoor bepaalde gebruikersconfiguraties van
setupNodeEventswerden genegeerd. eventemitter3toegevoegd als een vereiste afhankelijkheid.- Ingepakt enkele Playwright-methoden die eerder niet waren omhuld.
3.4.0 (12 december 2023)
- Een probleem opgelost waar paginastaten verloren gingen of fouten optraden wanneer tests paginanavigaties veroorzaakten.
- Enige overbodige code verwijderd uit de Cypress-integratie.
3.3.0 (7 december 2023)
- Geen voor de gebruiker zichtbare wijzigingen
3.2.0 (9 november 2023)
- Geen voor de gebruiker zichtbare wijzigingen
3.1.1 (12 oktober 2023)
- Geen voor de gebruiker zichtbare wijzigingen
3.1.0 (14 september 2023)
- Alle integraties staan nu
--headless=newtoe.
3.0.0 (8 september 2023)
Om gevallen aan te pakken waarin analyze() onverwachts niet werd aangeroepen, moesten de volgende functies worden verouderd en vervangen:
| Verouderde functie | Nieuwe functie |
|---|---|
wrapPlaywright(browserContext, controller) |
wrapPlaywrightPage(page, controller) |
wrapPuppeteer(context, controller) |
wrapPuppeteerPage(page, controller) |
Het gebruik van de verouderde functies zal een foutmelding geven.
