Référence API WebdriverIO pour Axe DevTools pour le Web
Référence pour les API du package @axe-devtools/webdriverio
Constructeur
Dans la configuration standard, le seul argument requis pour le constructeur de WebdriverIO est l'instance WebdriverIO. Si vous souhaitez utiliser une version différente de axe-core que celle initialement incluse ou un jeu de règles personnalisé, vous pouvez passer ces options dans le constructeur.
Vous ne pouvez pas sélectionner une version non standard de axe-core et un jeu de règles personnalisé.
AxeDevToolsWebdriverIO(options: Options)L' Options interface est un objet qui contient les propriétés suivantes :
client(requis) : un client WebdriverIOaxeSource(optionnel) : une chaîne de code source axe-corerulesetID(optionnel) : un ID de jeu de règles ('wcag2', 'wcag2.1', 'wcag2.2', 'wcag2aaa', 'wcag2.1aaa', 'wcag2.2aaa', '508', 'en301549', 'rgaav4', 'ttv5')
Vous ne pouvez pas fournir à la fois axeSource et rulesetID. Les deux s'excluent mutuellement.
Définir la version axe-core
Par défaut, @axe-devtools/webdriverio utilisera la dernière version disponible de axe-core. Pour configurer une version différente de axe-core, passez via l'option axeSource . Toutes les versions de axe-core peuvent être récupérées depuis npm ou via unpkg en visitant http://unpkg.com/axe-core@<version>/axe.js (remplacez <version> par le numéro de version). Toutes les versions de axe-core après 2.1.0 sont prises en charge.
Voici un exemple d'initialisation de Axe DevTools WebdriverIO avec axe-core 2.3.0 à partir d'un fichier situé dans le répertoire parent du fichier de test.
const axeSource = require('../axe-core-3.5.0').source;
const axeDevTools = new AxeDevToolsWebdriverIO({ client, axeSource });Méthode analyze
Cette méthode exécute l'analyse et finalement renvoie les résultats du scan d'accessibilité.
analyze(client: webdriverio.Client): Promise<axe.AxeResults>Exécutez une analyse en utilisant la configuration par défaut sur le client donné. Un Promise est renvoyé, qui se résout avec le jeu de résultats renvoyé par axe-core.
Règles personnalisées
Pour plus d'informations sur l'utilisation de règles personnalisées avec Axe DevTools, lisez le guide sur la génération et l'intégration de jeux de règles personnalisés dans le guide CLI.
Méthode analyzeUniversal
Effectue une analyse et renvoie les résultats au format Axe Universal. La méthode existante analyze() est inchangée.
analyzeUniversal(): Promise<UniversalExport>Options de chaîne
Plusieurs options existent pour définir la portée de vos analyses Axe DevTools. Vous pouvez inclure ou exclure des sélecteurs CSS spécifiques et/ou ignorer les iframes. Les méthodes de chaîne (ci-dessous) sur le constructeur rendent cela possible.
disableFrame
AxeDevToolsWebdriverIO.disableFrame(selector: string): AxeDevToolsWebdriverIODésactive l'injection de axe-core dans les cadres correspondant au sélecteur CSS donné. Cette méthode peut être appelée un nombre quelconque de fois.
include
AxeDevToolsWebdriverIO.include(selector: string): AxeDevToolsWebdriverIOSélecteur à inclure dans l'analyse. Cela peut être appelé un nombre quelconque de fois.
exclude
AxeDevToolsWebdriverIO.exclude(selector: string): AxeDevToolsWebdriverIOSélecteur à exclure de l'analyse. Cela peut être appelé un nombre quelconque de fois.
Configuration des règles
Ces options modifient la configuration des règles pour le jeu de règles choisi. Ces options remplacent la configuration standard des règles et modifieront vos résultats. Des appels supplémentaires de ces méthodes remplaceront les appels précédents.
withRules
AxeDevToolsWebdriverIO.withRules(rules: RuleID[]): AxeDevToolsWebdriverIOLimitez l'analyse uniquement aux règles spécifiées. Ne peut pas être utilisé avec AxeDevToolsWebdriverIO.withTags().
withTags
AxeDevToolsWebdriverIO.withTags(tags: axe.TagValue[]): AxeDevToolsWebdriverIOLimitez l'analyse uniquement aux tags spécifiés. Ne peut pas être utilisé avec AxeDevToolsWebdriverIO.withRules().
disableRules
AxeDevToolsWebdriverIO.disableRules(rules: RuleID[]): AxeDevToolsWebdriverIODéfinissez la liste des règles à ignorer lors de l'exécution d'une analyse.
Options de axe-core
Ces options accèdent à la configuration sous-jacente de axe-core. Pour plus d'informations sur ces options, voir la documentation de axe-core.
configurer
AxeDevToolsWebdriverIO.configure(config: axe.Spec): AxeDevToolsWebdriverIODéfinissez la configuration pour axe-core. Cette valeur est transmise directement à axe.configure().
options
AxeDevToolsWebdriverIO.options(runOptions: axe.RunOptions): AxeDevToolsWebdriverIOLes runOptions à transmettre directement à axe.run(). Voir la documentation de axe-core pour l'utilisation. Cela remplacera toutes les autres options configurées, y compris les appels à AxeDevToolsWebdriverIO.withRules() et AxeDevToolsWebdriverIO.withTags().
Service d'utilisation
Le service d'utilisation vous permet d'obtenir un aperçu des tendances d'utilisation d'Axe DevTools au sein de votre organisation.
Par défaut, le service d'utilisation est désactivé, et l'URL par défaut est https://usage.deque.com.
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é) |
AXE_METRICS_URL |
Chaîne de caractères | — | L'URL du point d'accès REST pour l'utilisation |
AXE_TRACK_USAGE |
Booléen | — | Active le rapport de service d'utilisation (par défaut est false) |
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 |
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é spécifique de l'utilisateur, comme le nom ou l'ID de connexion |
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 des données au service d'utilisation
.enableTracking(state: boolean): AxeDevToolsWebdriverIOdéfinirUrlSuivi
Cette méthode permet aux utilisateurs de changer l'endroit où les données des métriques d'utilisation sont envoyées
.setTrackingUrl(url: string): AxeDevToolsWebdriverIOdéfinirIdDistinct
Cette méthode permet aux utilisateurs de changer l'id distinct stocké/utilisé
.setDistinctId(distinctId: string): AxeDevToolsWebdriverIO