Gestion des erreurs Python dans Axe DevTools pour le Web

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Explique comment fonctionne la gestion des erreurs dans Axe DevTools pour le Web avec Python

Not for use with personal data

Comment contourner les erreurs causées par Axe DevTools Python 4.3

La version 4.3.0 et au-delà des intégrations Axe DevTools utilise une nouvelle technique lors de l'appel de Axe.analyze(), qui ouvre une nouvelle fenêtre à la fin d'une exécution. Beaucoup des problèmes décrits dans ce document abordent des problèmes courants liés à cette technique et leurs solutions potentielles.

Avoir un pilote obsolète

Un problème courant est d'avoir un pilote obsolète. Pour résoudre ce problème, assurez-vous que votre installation locale de geckodriver ou chromedriver est à jour.

Un exemple de message d'erreur pour ce problème inclura un message concernant switchToWindow.

Exemple :

(node:17566) UnhandledPromiseRejectionWarning: Error: Malformed type for "handle" parameter of command switchToWindow
Expected: string
Actual: undefined

Avoir les bloqueurs de fenêtres contextuelles activés

Les bloqueurs de fenêtres contextuelles nous empêchent d'ouvrir la nouvelle fenêtre lors de l'appel de Axe.analyze(). La configuration par défaut de la plupart des bibliothèques de tests automatisés devrait autoriser les fenêtres contextuelles. Veuillez vous assurer de ne pas activer explicitement les bloqueurs de fenêtres contextuelles, car cela pourrait causer un problème lors de l'exécution des tests.

Axe.set_legacy_mode()

Si vous ne pouvez pas exécuter la nouvelle technique de Axe.analyze() sans erreurs, axe fournit une nouvelle méthode chaînable pour exécuter la version héritée de Axe.analyze(). Lors de l'utilisation de cette méthode, axe exclut les problèmes d'accessibilité qui peuvent survenir dans les frames inter-domaines et les iframes.

note

Axe.set_legacy_mode() est obsolète et sera supprimé dans la version 5.0. Veuillez signaler toute erreur que vous pourriez rencontrer lors de l'exécution de Axe.analyze() afin qu'elle puisse être corrigée avant que la version héritée ne soit supprimée.

Exemple

from axe_devtools_api import Axe

driver = ... # open webdriver and go to your page
results = Axe(driver).set_legacy_mode().analyze()