Présentation de l'API Python

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

Présentation d'Axe DevTools pour Web pour Python, y compris les packages disponibles et les intégrations des frameworks de test

Not for use with personal data

Axe DevTools Python comprend :

  • axe-core version 4
  • Prise en charge de Python 3 (ne prend pas en charge Python 2)
  • configurations de test basées sur unittest, robot framework, behave, ainsi que tout autre framework utilisant des assert

Les analyses sont exécutées par défaut selon le niveau AA de la WCAG 2.1, avec les règles de bonnes pratiques et expérimentales désactivées. Consultez Personnalisation des règles pour modifier l'ensemble de règles ou activer les bonnes pratiques.

Prérequis

Axe DevTools nécessite une liaison Selenium WebDriver pour un navigateur de votre choix. Pour utiliser Axe DevTools, vous devez d'abord installer et configurer Selenium WebDriver.

Description

Axe DevTools est composé de plusieurs parties. Le package principal est axe-devtools-api, qui fournit la logique pour configurer et exécuter axe. axe-devtools-selenium est utilisé pour permettre à axe-devtools-api de communiquer réellement avec les navigateurs.

Il existe trois intégrations avec des frameworks de test.

axe-devtools-unittest est une bibliothèque d'assertions légère pour unittest qui repose sur axe-devtools-api. Lorsque vous utilisez cette intégration, vous devez déclarer axe-devtools-api comme une dépendance et l'utiliser directement.

axe-devtools-robot intègre Axe DevTools avec le Robot Framework. axe-devtools-api et axe-devtools-selenium sont automatiquement inclus en tant que dépendances. Cependant, vous n'interagirez avec aucun des deux. L'intégration utilisera plutôt votre fichier .robot pour faire fonctionner axe.

axe-devtools-behave intègre Axe DevTools avec behave, un framework de test semblable à cucumber. axe-devtools-api et axe-devtools-selenium sont automatiquement inclus en tant que dépendances. Cependant, vous n'interagirez avec aucun des deux. L'intégration utilisera plutôt votre fichier .feature pour faire fonctionner axe.

Éléments personnalisés et ElementInternals

À partir de Axe DevTools Python 4.13.0, les analyses lisent les sémantiques ARIA que les composants web déclarent en JavaScript via ElementInternals, plutôt que seulement les attributs role et aria-* présents dans le balisage. Aucune configuration n'est requise. Les sémantiques dans le DOM restent prioritaires : un attribut role ou aria-* explicite sur l'élément remplace la valeur de ElementInternals.

Vos composants doivent publier leurs internes pour que cela prenne effet, et un composant qui les stocke dans un champ de classe privée ne peut pas être lu. Voir Tester des éléments personnalisés qui utilisent ElementInternals.