Notes de version du package Watcher
Notes de version décrivant les changements dans le package Watcher pour la version 3.0.0 et ultérieures
4.3.0 (12 mai 2026)
- Corrections de bugs
- Correction d'une condition de course dans l'intégration Java où le changement de contexte du navigateur vers une iframe déclenchait incorrectement des analyses, entraînant l'enregistrement de résultats supplémentaires.
- Mise à jour d'axe-core vers la version 4.11.4.
4.2.0 (6 avril 2026)
-
Fonctionnalités
- Extension de l'option
gitpour prendre en charge la fourniture explicite des métadonnées Git. En JavaScript/TypeScript, la propriétégitaccepte désormais un objetAxeConfigurationen plus d'un booléen. En Java,GitConfigpossède une nouvelleAxeWatcherOptionsméthode. Lorsqu'unsetGitInfo(AxeWatcherGitInfo)ou un objetGitConfigest fourni, la détection Git automatique est ignorée. Tous les champs sont facultatifs. Cela est utile lorsque les tests s'exécutent dans un dépôt qui est séparé du dépôt à tester, ou dans des environnements CI où la détection automatique de Git n'est pas fiable. VoirAxeWatcherGitInfoFournir des métadonnées Git pour plus d'informations. Corrections de bugs
- Extension de l'option
-
Correction d'un problème où appeler
- alors que les résultats étaient encore en cours de traitement pouvait produire des résultats incomplets. (Intégration JavaScript/TypeScript)
flush()Correction d'un problème dans l'intégration Java/Selenium où les exceptions de - n'étaient pas correctement remontées, ce qui provoquait l'échec immédiat des attentes explicites au lieu d'attendre l'apparition de l'élément.
findElement()Amélioration de la fiabilité dans l'intégration Java : Watcher réessaie désormais automatiquement d'envoyer les résultats au serveur jusqu'à trois fois lorsqu'une erreur transitoire est rencontrée. - Correction d'un problème dans l'intégration Java où le passage de
- à certaines méthodes de configuration a causé une exception non gérée. Ces méthodes lancent désormais une
nullavec un message descriptif.IllegalArgumentException4.1.0 (24 février 2026)
- alors que les résultats étaient encore en cours de traitement pouvait produire des résultats incomplets. (Intégration JavaScript/TypeScript)
Fonctionnalités
-
Watcher analyse maintenant automatiquement toutes les iframes de même origine. (L'intégration Cypress avait déjà ce comportement.) Cela s'applique aux intégrations Playwright, Puppeteer, WebdriverIO, WebDriverJS et Java Selenium.
- Ajout du support pour le RGAA v4 (standard d'accessibilité français). Définir
- dans
accessibilityStandard: 'RGAAv4'(JavaScript/TypeScript) ou utiliserConfigurationOverrides(Java). Nécessite la version 4.11.0 ou ultérieure d'axe-core. La configuration globale détermine si cette norme est autorisée pour votre organisation.ConfigurationOverrides.AccessibilityStandard.RGAAV4Ajout d'une option - à
git(JavaScript/TypeScript) etAxeConfiguration(Java) pour contrôler si les informations Git sont collectées. DéfinirAxeWatcherOptions(JavaScript/TypeScript) ou appelergit: false(Java) pour exécuter Watcher sans collecter les données Git. La valeur par défaut estsetGit(false)(les informations Git sont collectées).trueMise à jour d'axe-core vers la version 4.11.1. - Corrections de bugs
-
Correction d'un problème dans l'intégration Java où un chemin binaire Chrome personnalisé défini via
- sur l'objet
setBinary()serait écrasé lorsqu'il est passé àChromeOptions.configure()4.0.0 (3 décembre 2025)
- sur l'objet
Watcher 4.0.0 est une version majeure du package Watcher.
Watcher 4.0.0 is a major release of the Watcher package.
-
Fonctionnalités
- Ajout du support proxy. Voir Utiliser Watcher avec un Proxy pour plus d'informations. (L'implémentation de proxy HTTP nécessite Node.js version 20.18.1 ou ultérieure).
- Mise à jour de la version d'axe-core à 4.11.0.
- Ajout du support pour Node.js version 24.
-
Correctifs
- Correction d'un problème de rapport d'informations Git lors de l'utilisation d'un pipeline GitLab.
- Amélioration de la gestion des erreurs pour les alternatives de Chrome comme Chrome pour les tests et Chromium.
- Gestion correcte des données Git vides.
- Inclure toutes les options Chrome fournies par l'utilisateur pour WebdriverIO.
-
Modifications significatives
-
Watcher (pour TypeScript et JavaScript) utilise maintenant de nouveaux chemins pour importer le package. Voir les instructions pour votre package d'intégration de navigateur pour voir des exemples de code mis à jour.
Plateforme d'automatisation de navigateur Ancien chemin Nouveau chemin Cypress @axe-core/watcher@axe-core/watcher/cypress/configCommandes Cypress @axe-core/watcher/dist/cypressCommands@axe-core/watcher/cypress/supportPlaywright @axe-core/watcher@axe-core/watcher/playwrightTest Playwright @axe-core/watcher@axe-core/watcher/playwright-testPuppeteer @axe-core/watcher@axe-core/watcher/puppeteerWebdriverIO @axe-core/watcher@axe-core/watcher/wdioTestrunner WebdriverIO @axe-core/watcher@axe-core/watcher/wdioWebDriverJS @axe-core/watcher@axe-core/watcher/webdriverExemple JavaScript pour WebDriverJS :
const { webdriverConfig, wrapWebdriver, WebdriverController } = require('@axe-core/watcher/webdriver') -
Remplacé la spécification incorrecte de
LaunchOptionsen TypeScript pour Playwright par un nouveau type appeléLaunchPersistentContextOptions, extrait dynamiquement delaunchPersistentContext. Les utilisateurs devront supprimer les options non prises en charge qu'ils utilisaient avecLaunchOptions; sinon, leur TypeScript échouera à compiler en mode strict.
-
3.23.0 (1 août 2025)
- Amélioration de la logique de délai d'attente et de réessai lors de l'envoi des résultats au serveur (pour Watcher pour JavaScript et TypeScript).
- Ajout d'un avertissement concernant l'option
--load-extensionsavec la version 139 de Chrome et ultérieure (à la fois pour l'implémentation JavaScript/TypeScript et l'implémentation Java). - Rapporter l'échec si les tentatives maximales d'upload de résultats échoués sont dépassées (
Flush: Failed. Maximum retries reached). - Correction des problèmes de gestion de Chrome pour les tests et de Chromium.
- Logger si le nombre maximum de réessais a été atteint.
- Mise en œuvre du test de composants dans l'intégration Cypress.
3.22.0 (1 juillet 2025)
- Assurez-vous que
runOptionsn'inclut aucune valeurnullqui a provoqué un échec silencieux dans l'intégration Java. - Assurez-vous que le fichier de licence pour l'implémentation Java est copié dans le répertoire
META-INF. - Correction d'un problème où les modèles d'URL exclus n'étaient pas copiés correctement en Java.
- Amélioration de la méthode de détermination de la branche Git par défaut.
3.21.0 (23 mai 2025)
- Java Watcher publiée.
- Mise en œuvre d'un moyen de secours pour déterminer le nom de la branche Git par défaut.
- Correction d'un problème d'intégration avec Cypress où les longs
wait() temps provoquaient des états de page dupliqués ou un échec du test. - Correction d'un problème où
runOptions.runOnlyne fonctionnait pas correctement avec l'intégration Cypress.
3.20.2 (17 avril 2025)
- Correction d'un problème avec les messages d'erreur de timeout spécifiant le mauvais paramètre à modifier. (Par exemple, l'utilisateur était dirigé pour changer
timeoutStartau lieu du bontimeout.startvaleur.)
3.20.1 (25 mars 2025)
-
**Fonctionnalités**
- Permettre la sélection de versions antérieures de axe-core.
- Rendu l'envoi des résultats au serveur plus robuste.
-
**Correctifs**
- Correction d'un problème lors de la consolidation des configurations globales avec les substitutions de configuration utilisateur.
- Correction d'une condition de concurrence dans l'intégration Cypress.
- Correction d'un problème avec l'intégration Cypress où les règles expérimentales n'étaient pas activées.
- Correction d'un problème où l'activation de la norme EN 301 549 n'était pas respectée.
- Correction d'un problème avec
configurationOverridessi aucune valeur n'était définie. - Ajout d'une validation supplémentaire pour Playwright et Playwright Test.
- Correction d'un problème lors de la sélection de versions de axe-core sans numéro de version patch.
- Amélioration de la logique pour la fusion des configurations utilisateur avec les configurations globales.
- Amélioration de la gestion de la version axe-core lorsqu'aucun
configurationOverridesn'est fourni. - Amélioration du message d'erreur pour une norme d'accessibilité non autorisée dans
configurationOverrides. - Correction des messages d'erreur pour inclure un lien vers la documentation de dépannage.
- Amélioration de la gestion des erreurs lors de l'envoi des résultats au serveur, ce qui provoquait auparavant l'arrêt de la suite de tests.
3.20.0
- Non publiée
3.19.1 (25 février 2025)
- Correction d'un problème de capture des états de page.
- Assurer que les suites de tests spécifiant
--disable-extensionsne désactivent pas Watcher.
3.19.0 (20 janvier 2025)
- Amélioration du message d'erreur avec les versions 1.49.0 ou supérieures de Playwright et Playwright Test lors de l'utilisation du
headlessparamètre lorsque le paramètrechannelest défini surfirefox. (Seuls les canauxchromiumouchromesont pris en charge avec le mode complètement affiché ou le nouveau mode sans tête.) - Amélioration de la vérification des versions pour axe-core.
- Prise en charge des configurations globales.
3.18.0 (18 décembre 2024)
- Correction de plusieurs problèmes de gestion de session, qui pouvaient entraîner l'apparition de résultats erronés ou vides sur le site.
- Ajout du support pour le nouveau Chromium headless dans les versions de Playwright >= 4.91. Voir Essayer le nouveau Chromium headless dans les notes de version de Playwright 4.91.
- Ajout de valeurs de délai d'attente personnalisées pour permettre aux utilisateurs de contrôler la gestion des sessions.
3.17.2 (12 décembre 2024)
-
Fonctionnalités
- Ajout du mode manuel à Watcher.
- L'exécution d'une analyse sur un protocole non pris en charge (tout protocole autre que https, http, ou file) ou sur la page about:blank entraînera une erreur.
- Désormais, Watcher génère une erreur s'il n'est pas configuré avant utilisation.
-
Corrections de bugs
- Correction d'un problème dans Playwright Test où les sessions étaient réutilisées, entraînant des résultats écrasés.
- Correction de plusieurs autres problèmes lors de la création et de la gestion des sessions.
- En mode manuel, appeler la méthode du contrôleur
start()marque désormais le DOM de la page actuelle comme propre, de sorte qu'aucun état de page n'est capturé. - En mode manuel, correction d'un problème où un état de page supplémentaire était parfois capturé lorsque
flush()était appelé. - Correction d'un problème qui causait un état de page manquant lorsque
cy.axeWatcherAnalyze()était appelé aprèscy.click()était appelé sans un appelcy.wait(). - Inclure maintenant un fichier LICENSES-3RD-PARTY.md mis à jour avec le package @axe-core/watcher.
- La méthode du contrôleur
stop()analyse désormais la page si le DOM a changé avant de désactiver le mode automatique. - Modification du comportement de Watcher afin que, s'il est en mode manuel, la page ne soit pas analysée si la méthode du contrôleur
stop()est appelée. - Correction d'un problème dans l'intégration Playwright qui faisait que les méthodes encapsulées renvoyaient des types incorrects.
- Correction d'un problème qui empêchait
runOptionsd'accepter seulement une option.
3.17.1
- Non publié
3.17.0
- Non publié
3.16.1 (25 octobre 2024)
- Inclusion de licences de tiers.
3.16.0 (26 septembre 2024)
- Correction d'un problème de dépendance transitive impliquant des commandes Cypress.
3.15.2 (13 septembre 2024)
- Ajout du support pour la version 9 de WebdriverIO (tout en conservant le support pour les versions 7 et 8 de WebdriverIO).
3.15.1
- Sauté (aucun candidat à la version n'existait)
3.15.0
- Non publié
3.14.3 (5 septembre 2024)
- Aucun changement visible pour l'utilisateur
3.14.2 (29 août 2024)
- Correction d'une erreur d'accès à la valeur du timeout dans Cypress.
- Pour Cypress, une exception est désormais levée si l'utilisateur essaie d'utiliser Watcher sans d'abord appeler
cypressConfig(). - Correction d'une erreur qui apparaissait dans certaines conditions dans Cypress lors de l'importation du
osmodule. - Ajout de
buildIDàAxeConfigurationpour des exécutions de tests parallèles. - Obsolète
sessionIDenAxeConfigurationau profit debuildID. - Correction d'un problème qui causait la capture d'un état de page supplémentaire avec Puppeteer en raison de la gestion de
authenticate(). - Améliorations de performance dans axe Watcher grâce aux modifications de l'obfuscation de code.
3.14.1
- Non publié
3.14.0
- Non publié
3.13.1 (19 juillet 2024)
- Permet d'exclure des URLs de l'analyse en utilisant l'option
excludeUrlPatterns. VoirexcludUrlPatterns.
3.13.0
- Non publié
3.12.0 (16 juillet 2024)
- Amélioration de la gestion du remontage des composants dans Cypress.
- Assurez-vous que Watcher peut être chargé dans WebdriverIO version 7.
- Ajout du support de Puppeteer
locator. - Ajout de la configuration pour
runContextetrunOptionspour axe-core. VoirrunContextetrunOptions.
3.11.1 (26 juin 2024)
- Correction d'un problème où les valeurs de retour des manipulateurs externes
setupNodeEventsdans Cypress n'étaient pas propagées. - Changement de comportement pour permettre le chargement de l'extension Chrome de Cypress.
3.11.0 (17 juin 2024)
- Réglé un problème où le démontage et le remontage des composants provoquaient un timeout des analyses d'accessibilité dans Cypress.
- Assouplissement de la logique de détection des navigateurs pour éviter des échecs même lors de l'utilisation de navigateurs pris en charge.
- Suppression des écritures sur le système de fichiers lors de la vidange des résultats dans Cypress.
3.10.0 (16 mai 2024)
- Correction d'un problème dans Cypress où l'objet
configretourné desetupNodeEventsn'était pas correctement propagé et toutes modifications apportées étaient perdues. - Correction de l'implémentation des fonctions proxy (pour Playwright Test) qui entraînait une erreur avec
Locatorles objets : ne peut être utilisé qu'avec l'objet Locator. - Enveloppement de deux nouvelles fonctions Playwright de la version 1.43.1.
3.9.0 (30 avril 2024)
- Ajout de types rétrocompatibles pour Puppeteer version 20.
- Pour Cypress, déprécié
axeAnalyze(),axeFlush(),axeStart(), etaxeStop(). Remplacé paraxeWatcherAnalyze(),axeWatcherFlush(),axeWatcherStart(), etaxeWatcherStop(). - Correction d'un
TypeErrorsur certains hooks de Puppeteer version 21 (et ultérieures).
3.8.0 (9 avril 2024)
- Mise à jour du JavaScript émis pour cibler ECMAScript 2018 (ES2018) au lieu de ECMAScript 2015 (ES2015).
3.7.0 (21 mars 2024)
- Aucun changement visible par l'utilisateur
3.6.0 (7 mars 2024)
- Dans l'intégration Cypress, éviter
after:runles événements si aucun test n'a été exécuté. - Modification du format de l'URL de téléchargement pour Chromedriver en raison du passage de l'équipe Chromedriver à une nouvelle solution d'hébergement. Impacte WebdriverIO.
3.5.0 (25 janvier 2024)
- Correction d'un problème où l'appel de la
Page.goto()méthode de Playwright enregistrait incorrectement deux états de page. - Correction d'un problème dans l'intégration Cypress qui faisait que certaines configurations utilisateur de
setupNodeEventsétaient ignorées. - Ajout de
eventemitter3en tant que dépendance requise. - Enveloppement de certaines méthodes Playwright qui n'avaient pas été enveloppées auparavant.
3.4.0 (12 décembre 2023)
- Correction d'un problème où les états des pages étaient perdus ou des erreurs se produisaient lorsque les tests provoquaient des navigations de page.
- Suppression de certains codes redondants de l'intégration Cypress.
3.3.0 (7 décembre 2023)
- Aucun changement visible par l'utilisateur
3.2.0 (9 novembre 2023)
- Aucun changement visible par l'utilisateur
3.1.1 (12 octobre 2023)
- Aucun changement visible par l'utilisateur
3.1.0 (14 septembre 2023)
- Toutes les intégrations permettent désormais
--headless=new.
3.0.0 (8 septembre 2023)
Pour résoudre les cas où analyze() n'était pas appelé de manière inattendue, les fonctions suivantes devaient être dépréciées et remplacées :
| Fonction obsolète | Nouvelle fonction |
|---|---|
wrapPlaywright(browserContext, controller) |
wrapPlaywrightPage(page, controller) |
wrapPuppeteer(context, controller) |
wrapPuppeteerPage(page, controller) |
L'utilisation des fonctions obsolètes générera une erreur.
