Référence de l'API WebDriverJS pour 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

Référence pour les API dans le package @axe-devtools/webdriverjs

Not for use with personal data

Constructeur

Dans la configuration standard, le seul argument requis à passer au constructeur d'Axe DevTools est l'instance de WebDriverJS. Si vous souhaitez utiliser une version différente d'axe-core que celle initialement incluse ou un jeu de règles personnalisé, vous pouvez passer ces options au constructeur.

note

Vous ne pouvez pas sélectionner une version non standard de axe-core et un ensemble de règles personnalisé.

Constructeur Axe DevTools WebDriverJS :

AxeDevToolsBuilder(driver:WebDriver, String:ruleset|Object:axe (optional))

Vous devez passer une instance de Selenium WebDriver comme premier argument. Le second argument optionnel peut être soit un ID d'ensemble de règles, soit un objet axe. Si vous ne fournissez pas de second argument, vous devez configurer le fichier de configuration des règles personnalisées de @axe-devtools/script-builder, ou le constructeur lancera une exception.

Ces exemples montrent comment utiliser le constructeur :

// instantiate with the Section 508 rule set
const builder = new AxeDevToolsBuilder(driver, '508');

// or with a specific axe instance
const axe = require('../axe-core-2.3.0');
const builder = new AxeDevToolsBuilder(driver, axe);

Règles personnalisées

Pour obtenir des informations sur l'utilisation des règles personnalisées avec Axe DevTools pour le Web, lisez le guide sur la génération et l'intégration des ensembles de règles personnalisées dans le guide CLI.

analyser

La méthode analyze() exécute l'analyse et retourne les résultats du scan d'accessibilité.

analyze(): Promise<axe.AxeResults>

Exécutez une analyse en utilisant la configuration par défaut sur le client donné. Un Promise est retourné, qui se résout avec l'ensemble de résultats d'accessibilité retourné par axe-core.

analyserUniversel

La méthode analyzeUniversal() exécute l'analyse et retourne les résultats dans le Axe Universal Format. La méthode analyze() existante reste inchangée.

analyzeUniversal(): Promise<UniversalExport>

Options de Chaînage

Deux options existent pour définir le périmètre de vos analyses Axe DevTools. Vous pouvez choisir d'inclure ou d'exclure des étendues CSS spécifiques. Les méthodes de chaînage (ci-dessous) sur le constructeur rendent cela possible.

inclure

new AxeDevToolsBuilder(driver).include('<CSS-Selector>');

Ajoute un sélecteur CSS à la liste des éléments à inclure dans l'analyse. Les éléments en dehors de la portée passée à include() ne seront pas scannés.

exclure

new AxeDevToolsBuilder(driver).exclude('<CSS-Selector>');

Ajoutez un sélecteur CSS à la liste des éléments à exclure de l'analyse. Seuls les éléments en dehors de la portée passée à exclude() seront scannés.

Ces méthodes peuvent être chaînées pour affiner davantage le périmètre de l'analyse, comme montré ci-dessous :

new AxeDevToolsBuilder(driver).include('<CSS-Selector>').exclude('<Inner-CSS-Selector>');

Dans cet exemple, tous les éléments à l'intérieur de <CSS-Selector> seraient scannés, excepté pour les éléments à l'intérieur de <Inner-CSS-Selector>.

Configuration des Règles

Les méthodes de configuration des règles remplacent la configuration standard des règles. Les appels supplémentaires avec ces méthodes remplaceront les appels précédents.

avecRègles

La méthode withRules() limite l'analyse uniquement à ces règles avec les IDs de règles spécifiés. Elle accepte une chaîne pour un seul ID de règle ou un tableau de plusieurs IDs de règles.

Ces exemples montrent l'utilisation de withRules avec un seul ID de règle et un tableau d'IDs de règles :

//with a single rule ID
AxeDevToolsBuilder(driver).withRules('html-lang');

//with an array of rule IDs
AxeDevToolsBuilder(driver).withRules(['html-lang', 'image-alt']);

avecTags

La méthode withTags() limite l'analyse uniquement aux règles associées à l'étiquette fournie. Accepte une seule étiquette ou un tableau d'étiquettes, comme indiqué ci-dessous :

//with a single tag
AxeDevToolsBuilder(driver).withTags('wcag2a');

//with an array of tags
AxeDevToolsBuilder(driver).withTags(['wcag2a', 'wcag2aa']);

désactiverRègles

AxeDevToolsBuilder.disableRules(rules: RuleID[]): AxeDevToolsBuilder

La méthode disableRules() entraîne le saut de l'exécution des règles fournies lors de l'analyse.

options axe-core

options

.options(options: Axe.RunOptions)

La méthode options spécifie les options à utiliser par axe.run. Elle remplacera toutes les autres options configurées, y compris les appels à withRules et withTags. Voir le documentation de l'API axe-core pour plus d'informations.

new AxeDevToolsBuilder(page).options({
  checks: { 'valid-lang': ['orcish'] }
});

configurer

.configure(config: Axe.Spec)

La méthode configure injecte un objet de configuration axe pour modifier l'ensemble des règles avant une analyse. Les appels suivants à cette méthode invalideront les précédents en appelant axe.configure() et en remplaçant l'objet de configuration. Voir documentation de l'API axe-core pour la structure de l'objet.

L'exemple suivant crée une nouvelle configuration axe-core et l'envoie à Axe DevTools pour être utilisée lors de la numérisation :

const config = {
  checks: [Object],
  rules: [Object]
};
const results = await new AxeDevToolsBuilder(page).configure(config).analyze();

Service d'utilisation

Par défaut, le service d'utilisation est activé, et l'URL par défaut est https://usage.deque.com. Définissez la variable d'environnement AXE_TRACK_USAGE à false pour le désactiver.

Variables d'environnement

Ces variables d'environnement vous permettent de configurer le service d'utilisation et de modifier les propriétés des événements signalés.

Nom Type Peut remplacer Description
AXE_DISTINCT_ID Chaîne de caractères Un identifiant UUID qui reste le même pour l'utilisateur connecté (sauf s'il est régénéré). En Ruby, cette variable est nommée DEQUE_DISTINCT_ID.
AXE_INCLUDE_TEST_RESULTS Booléen Définir sur true pour inclure les résultats complets de axe-core dans l'objet testResults de chaque événement (la valeur par défaut est false). Pris en charge uniquement par la CLI et les API Node.js.
AXE_METRICS_URL Chaîne de caractères L'URL du point de terminaison de l'utilisation REST (la valeur par défaut est https://usage.deque.com)
AXE_TRACK_USAGE Booléen Définir sur false pour désactiver le rapport de service d'utilisation. Le rapport est activé par défaut.
AXE_APPLICATION Chaîne de caractères faux L'application qui a été utilisée pour vérifier les erreurs d'accessibilité
AXE_DEV_INSTANCE Booléen vrai Indique si cet événement provient d'actions d'un développeur logiciel. Utile pour marquer et supprimer ensuite les événements enregistrés pendant le développement ou les tests.
AXE_DEPARTMENT Chaîne de caractères vrai Le département de l'utilisateur au sein de l'organisation
AXE_KEYCLOAK_ID Chaîne de caractères faux L'ID Keycloak de l'utilisateur
AXE_LOGGED_IN Booléen faux Enregistre si l'utilisateur est connecté à l'application en test
AXE_ORGANIZATION Chaîne de caractères vrai L'organisation de l'utilisateur. Pour que votre utilisation apparaisse dans Axe Reports, définissez ceci sur l'ID de votre organisation (contactez Deque pour l'obtenir).
AXE_SESSION_ID Chaîne de caractères faux Un UUID identifiant la session de l'utilisateur
AXE_USER_ID Chaîne de caractères faux L'identité d'un utilisateur spécifique, telle qu'une adresse e-mail, un nom ou un identifiant de connexion. Axe Reports compte les utilisateurs uniques à partir de cette valeur.
AXE_USER_JOB_ROLE Chaîne de caractères faux Le rôle professionnel de l'utilisateur
AXE_USER_STATUS Chaîne de caractères faux Informations de statut que vous souhaitez associer à l'utilisateur

activerSuivi

Cette méthode permet aux utilisateurs de choisir d'envoyer ou non des données au service d'utilisation. L'envoi est activé par défaut.

.enableTracking(state: boolean)
AxeDevToolsBuilder(driver).enableTracking(true)

définirUrlSuivi

Cette méthode permet aux utilisateurs de changer où les données des métriques d'utilisation sont envoyées.

.setTrackingUrl(url: string)
AxeDevToolsBuilder(driver).setTrackingUrl('https://foobar.biz')

définirIdDistinct

Cette méthode permet aux utilisateurs de changer l'ID distinct qui est stocké ou utilisé.

.setDistinctId(distinctId: string)
AxeDevToolsBuilder(driver).setDistinctId('foobar')