Un guide complet des outils d'accessibilité

Publié: 2022-03-10
Résumé rapide ↬ Dans une nouvelle courte série d'articles, nous mettons en évidence certains des outils et techniques utiles pour les développeurs et les concepteurs. Récemment, nous avons couvert les e-mails HTML et les générateurs SVG. Cette fois, nous examinons différents types d'outils pour vous aider à rationaliser votre processus de test d'accessibilité. Ne manquez pas le prochain.

Apprendre à créer des sites Web accessibles peut être une tâche ardue pour ceux qui commencent tout juste à mettre en œuvre des pratiques accessibles. Nous avons rassemblé une large gamme d'outils d'accessibilité, allant des bookmarklets à usage unique aux applications complètes, afin de vous aider à démarrer la création de sites Web plus accessibles.

ARIA

L'enquête WebAIM Million a révélé que les pages d'accueil avec ARIA présentes présentaient en moyenne 41 % d'erreurs détectables en plus que celles sans ARIA. ARIA est un outil essentiel pour créer des applications Web complexes, mais les spécifications sont strictes et peuvent être difficiles à déboguer par ceux qui n'utilisent pas régulièrement les technologies d'assistance. L'outillage peut nous aider à nous assurer que nous utilisons ARIA correctement et que nous n'introduisons pas plus d'erreurs dans nos applications.

Page de résultats du bookmarklet WAI-ARIA.
Le bookmarklet WAI-ARIA charge un script pour vérifier les rôles et les attributs ARIA de votre page. ( Grand aperçu )

TPGi a créé un bookmarklet WAI-ARIA qui analyse votre page pour s'assurer que tous les éléments et leurs rôles donnés et les attributs ARIA sont valides. Lors de l'activation du bookmarklet, la page est analysée à la recherche d'éventuelles erreurs et un nouvel onglet s'ouvre avec les résultats. Les résultats incluent le nombre total de rôles valides, les erreurs ARIA détectées et les extraits de code indiquant où les erreurs ont été trouvées afin que vous puissiez facilement déboguer votre page.

Une chose qui n'a pas été explicitement testée dans le bookmarklet ci-dessus est la présence de rôles ARIA en double. Certains rôles de point de repère ont des noms qui semblent s'appliquer à plusieurs éléments, mais ne doivent être utilisés qu'une seule fois par page, tels que banner ou contentinfo . Adrian Roselli a mis au point un simple bookmarklet basé sur CSS pour vérifier si l'un de ces rôles ARIA a été dupliqué. L'activation du bookmarklet ajoutera un contour rouge à tout élément incriminé.

La démo de NerdeRegion, une région en direct qui dit "Rien à lire ici" a été remplacée par "Lire Smashing Magazine !" Les modifications de texte sont suivies dans le panneau NerdeRegion des outils de développement.
Nerde Region suit toutes les modifications apportées aux régions en direct de votre page. ( Grand aperçu )

NerdeRegion est une extension Chrome qui enregistre toutes les sorties de toutes les régions aria-live. Vous ne comprenez pas pourquoi votre lecteur d'écran annonce quelque chose de façon inattendue ? NerdeRegion peut vous permettre de suivre les annonces horodatées et l'élément source dont elles proviennent, le tout dans un panneau de DevTools. Puisqu'il peut y avoir des bogues et des incohérences dans la façon dont les régions aria-live sont annoncées avec différents lecteurs d'écran, NerdeRegion peut être un excellent outil pour déterminer si un problème est potentiellement causé par votre code ou par la combinaison de périphériques.

Plus après saut! Continuez à lire ci-dessous ↓

Outils de test automatique

Cette classe d'outils peut être utilisée par le développeur ou le testeur pour exécuter des tests automatisés sur la sortie de votre code, en détectant les erreurs qui peuvent ne pas apparaître évidentes dans le code source. Il existe de nombreux services payants de haute qualité et d'autres outils au-delà de ce que nous avons mentionné ici, mais nous nous sommes concentrés sur des outils avec des offres gratuites complètes afin de réduire les barrières à l'entrée. Tous les outils répertoriés peuvent être exécutés sur des pages qui ne sont pas sur l'Internet public, ce qui leur permet d'être plus facilement intégrés dans un flux de développement. Il est important de noter que les tests d'accessibilité sont compliqués et nécessitent toujours des tests manuels pour comprendre le contexte complet du site, mais ces outils de test automatisés peuvent vous donner une bonne longueur d'avance.

De nombreux outils utilisent un noyau de hache sous le capot, il peut donc être redondant d'utiliser une combinaison d'outils. En fin de compte, le type d'outil que vous choisissez dépend davantage du type d'interface utilisateur que vous préférez et du niveau d'exhaustivité des résultats. Par exemple, Lighthouse, l'outil intégré à Google Chrome, utilise une sélection partielle de règles axe-core, donc si vous parvenez à obtenir une analyse propre avec ax DevTools, vous ne devriez pas avoir besoin d'exécuter une analyse Lighthouse également.

Axe DevTools montrant les détails d'un "Le document ne doit pas avoir plus d'une erreur de repère de bannière" avec des extraits de code.
Le test automatisé Axe DevTools indique vos erreurs et où les trouver dans votre code. ( Grand aperçu )

Axe DevTools est disponible en tant qu'extension Chrome ou extension Firefox et apparaît sous forme de panneau dans les outils de développement. Vous pouvez tester une page entière ou seulement une partie d'une page, et tous les problèmes détectés sont triés par gravité et accompagnés d'extraits de code pour faciliter le débogage. Axe vous permet également de détecter plus d'erreurs que d'autres outils automatisés grâce à sa fonction de tests guidés intelligents. Les tests guidés intelligents identifient les zones à tester et soulèvent autant de charges lourdes que possible, avant de poser des questions au testeur afin de générer un résultat. Axe vous permet également d'enregistrer et d'exporter les résultats, ce qui est utile pour corriger les erreurs dans le cadre d'un processus de développement plus long et plus coopératif.

Accessibility Insights fonctionne également sur axe-core, mais possède plusieurs fonctionnalités qui le différencient d'ax DevTools. Il peut être exécuté sur diverses plates-formes, notamment Android, Windows ou en tant qu'extension de navigateur. Toutes les versions d'Accessibility Insights disposent d'un outil de type inspecteur pour rechercher des informations sur les éléments individuels, ainsi qu'un moyen d'exécuter des vérifications automatisées. L'extension Web contient également une fonctionnalité d'évaluation, qui combine des tests automatisés, guidés et manuels afin de vous permettre de générer un rapport complet.

L'extension WAVE s'exécute sur une page Smashing Magazine.
Le panneau de structure de document de WAVE vous montre quels repères et en-têtes se trouvent sur votre page. ( Grand aperçu )

WAVE by WebAIM fait partie intégrante de ma trousse à outils. Disponible sous forme d'extension ainsi qu'un service de test de masse et une API, je trouve cet outil idéal pour vérifier mon travail au fur et à mesure que je développe en raison de sa simplicité et de sa rapidité. Tout est chargé sous forme de panneau sur le côté de votre page, et vous pouvez obtenir une vue globale des erreurs en faisant défiler la page. Si une erreur s'affiche dans le panneau latéral mais que vous ne savez pas où elle se trouve dans le DOM, vous pouvez désactiver les styles pour la localiser dans le balisage. La fonction d'en-tête et de point de repère de WAVE est l'une de mes choses préférées car elle garantit que la sémantique de mon document est correcte au fur et à mesure que je le construis.

SiteImprove propose une extension Chrome gratuite en plus de ses offres de services payantes. Comme WAVE, vous exécutez l'extension sur une page et elle répertorie les erreurs dans un panneau sur le côté de la page, y compris des filtres pour des éléments tels que le niveau de conformité, la gravité et la responsabilité. Le filtre de gravité est particulièrement utile car les tests automatiques ont toujours tendance à produire des faux positifs.

Avez-vous déjà envisagé d'automatiser les tests d'accessibilité de votre code source avec GitHub Actions ? Peu importe si vous n'avez pas encore compris les actions GitHub ou si vous avez juste besoin d'un peu d'aide pour configurer un flux de travail approprié, le didacticiel d'Adrian Bolonio est fait pour vous. Il vous montre étape par étape comment automatiser vos tests d'accessibilité avec des bibliothèques telles que axe, pa11y, Lighthouse et des tests unitaires directement dans votre référentiel GitHub.

GitHub Action avertit que toutes les vérifications ont échoué.
Les actions GitHub sont un moyen efficace d'automatiser les tests d'accessibilité. ( Grand aperçu )

Vous apprendrez à configurer votre référentiel afin que les actions GitHub soient exécutées dès que vous créez ou mettez à jour une demande d'extraction vers la branche principale. Si l'une des actions GitHub détecte des vulnérabilités d'accessibilité, la demande d'extraction se bloque et désactive la fusion jusqu'à ce que vous ayez résolu les erreurs trouvées. Un petit détail qui fait une grande différence.

Couleurs

Des erreurs de texte à faible contraste ont été trouvées sur 86,4 % des pages d'accueil l'année dernière. Les développeurs ont souvent un contrôle limité sur une palette de couleurs, il est donc important d'essayer d'établir une palette de couleurs accessible le plus tôt possible dans le processus.

Couleurs de la marque Smashing Magazine en tant que palette Are My Colors Accessible
Are My Colors Accessible propose un mode palette dans lequel vous pouvez comparer toutes les couleurs de votre palette les unes par rapport aux autres. ( Grand aperçu )

Lorsque vous commencez à concevoir une palette de couleurs, un outil de sélection de couleurs intégré au navigateur peut être utile. Mes couleurs sont-elles accessibles ? est un outil qui peut vous aider à déterminer une palette de couleurs accessible. Le mode de base calcule le rapport de contraste entre deux couleurs. La taille et le poids de la police de votre texte peuvent affecter le rapport de contraste requis en fonction du niveau de conformité, et cet outil présente utilement toutes les différentes normes auxquelles il répond. Il comporte également des curseurs de plage HSL afin que vous puissiez modifier n'importe quelle couleur, les résultats étant automatiquement mis à jour au fur et à mesure que vous effectuez des ajustements. Le mode Palette vous permet de comparer toutes les couleurs d'une palette les unes par rapport aux autres et affiche le rapport de contraste et les normes respectées, ce qui est utile pour déterminer comment vous pouvez combiner différentes couleurs . Faire des ajustements de couleur met également à jour le permalien, vous permettant de partager facilement des combinaisons de couleurs avec votre équipe. Si vous préférez une interface différente pour sélectionner les couleurs, Atul Varma a créé un outil similaire qui utilise un sélecteur de couleurs au lieu des curseurs de plage HSL.

Page de comparaison des couleurs d'accessibilité Geenes où un spectre rouge est comparé à un spectre gris.
Faites passer vos outils de couleur au niveau supérieur avec Geenes, qui peut vous aider à déterminer toutes les teintes et nuances de votre palette. ( Grand aperçu )

Geenes tente de tout faire en créant des gammes complètes de teintes / nuances pour chaque groupe de couleurs que vous ajoutez, vous permettant de concevoir un système en couleur au lieu d'une palette limitée. En plus de fournir des rapports de contraste, Geenes vous permet également d'appliquer votre palette à diverses maquettes et d'émuler différentes formes de daltonisme. Vous pouvez tester gratuitement la plupart des fonctionnalités et déverrouiller plusieurs palettes avec un don.

Certains outils peuvent vous aider à résoudre des problèmes d'accessibilité spécifiques liés aux couleurs. Les boutons en particulier peuvent être délicats, car non seulement vous devez vous soucier de la couleur du texte avec la couleur d'arrière-plan, mais vous devez également tenir compte de l'arrière-plan du bouton avec l'arrière-plan de la page et de la couleur du contour du focus avec les deux arrière-plans. Le projet ButtonBuddy de Stephanie Eckles explique ces exigences dans un langage simple et vous aide à choisir les couleurs de ces pièces individuelles.

Qui peut utiliser avec une comparaison des rapports de contraste entre le rouge et le bleu foncé
Qui peut utiliser peut vous indiquer si vos couleurs peuvent poser des difficultés potentielles aux utilisateurs daltoniens. ( Grand aperçu )

Certaines combinaisons de couleurs peuvent techniquement répondre aux exigences de contraste lorsqu'elles sont vues par des personnes non daltoniennes, mais peuvent poser des problèmes pour des types spécifiques de daltonisme et de basse vision. Qui peut utiliser applique un filtre visuel pour émuler différents types de daltonisme , puis calcule un rapport de contraste approximatif des couleurs.

Si vous souhaitez tester vos combinaisons de couleurs dans le contexte d'un site existant, Stark est une extension de sélecteur de couleurs pour Chrome qui vous permet de simuler certains types de daltonisme. De plus, Anna Monus a créé une description utile des outils de daltonisme déjà intégrés à Chrome. Bien que ce type d'émulation ne puisse jamais remplacer complètement les tests avec de vrais utilisateurs, il peut nous aider à faire de meilleurs choix initiaux.

La sortie du terminal de l'outil CLI d'Alex Clapperton.
Vérifiez vos taux de contraste des couleurs sans jamais quitter le confort de votre terminal. ( Grand aperçu )

Parfois, en tant que développeurs, nous commençons à travailler sur un projet où nous devrons peut-être concevoir au fur et à mesure et commencer à écrire du code sans une palette de marque complète et préétablie. Une fois le développement commencé, il peut être fastidieux de continuer à importer des palettes de couleurs dans les deux sens dans des outils externes. Il existe de nombreuses options pour vérifier le contraste des couleurs dans un environnement de code . Alex Clapperton a développé un outil CLI où vous passez en deux couleurs et il affiche le rapport de contraste et les normes de passage directement dans le terminal. La BBC a publié un vérificateur de contraste de couleur JavaScript qui prend deux couleurs et détermine s'il répond ou non à la norme souhaitée. Un outil comme celui-ci peut vivre dans votre base de code avec vos tests, ou être implémenté dans votre bibliothèque de système de conception comme Storybook, PatternLab, etc.

A11y Color Tokens va encore plus loin et vous permet de générer automatiquement des jetons de couleur complémentaires en CSS ou SASS. Vous passez dans une couleur et un rapport souhaité pour générer une nuance ou une teinte de cette couleur qui répond aux exigences. Si vous avez besoin de vérifier rapidement le rapport de contraste de quelque chose, Chrome et Firefox affichent désormais également les informations de contraste des couleurs dans leurs sélecteurs de couleurs d'outils de développement respectifs. Si aucun de ces outils ne vous convient, Stephanie Walter a couvert de nombreuses autres options d'outils liés aux couleurs dans son article de blog sur l'accessibilité des couleurs.

Compatibilité

La construction pour la technologie d'assistance peut souvent ajouter un autre niveau de complexité en matière de débogage. Étant donné que la technologie d'assistance est essentiellement une autre couche d'une interface au-dessus du navigateur, nous devons maintenant nous préoccuper des combinaisons de navigateur et de technologie d'assistance. Un bogue peut être présent dans le navigateur ou dans la technologie d'assistance, ou il peut être présent uniquement dans une combinaison particulière. C'est une bonne idée de garder cette liste de traqueurs de bogues à portée de main lorsque vous essayez de résoudre un problème spécifique. Certains d'entre eux sont publics afin que vous puissiez voir si d'autres rencontrent le bogue que vous rencontrez, mais d'autres n'offrent qu'un moyen de signaler les bogues en privé.

Tableau d'accessibilité HTML5 des sections sémantiques et des éléments de regroupement et de leur prise en charge par le navigateur. Tous les navigateurs modernes prennent en charge les éléments, mais IE11 fait défaut.
L'accessibilité HTML5 peut vous aider à identifier la prise en charge du navigateur pour différents éléments. ( Grand aperçu )

Toutes les combinaisons de navigateurs et de lecteurs d'écran ne fonctionnent pas bien ensemble, et toutes les fonctionnalités d'accessibilité ne sont pas prises en charge de la même manière sur tous les navigateurs. Ces outils peuvent vous aider à vérifier si vous rencontrez un bogue sur une combinaison spécifique d'appareils. L'accessibilité HTML5 est une liste des nouvelles fonctionnalités HTML indiquant si l'implémentation du navigateur par défaut est ou non prise en charge de manière accessible . Dans le même ordre d'idées, Accessibility Support fournit une liste des rôles ARIA et leur prise en charge dans les combinaisons de navigateur et de lecteur d'écran les plus populaires.

Documenter l'accessibilité

L'accessibilité est toujours une réflexion après coup dans de nombreuses équipes de conception UX. Une stratégie simple mais très efficace pour vous aider à adopter un état d'esprit d'accessibilité vient d'Elise Livingston et de son équipe de Qualtrics . Ils ont commencé à ajouter des documents d'accessibilité à tous les documents de conception avant de les transmettre à l'ingénierie. Non seulement pour améliorer l'accessibilité des produits, mais aussi pour détecter les problèmes d'accessibilité potentiels beaucoup plus tôt dans le processus de conception.

Maquette pour un composant "Welcome back" montrant des projets récents. Il est étiqueté avec des notes sur l'accessibilité.
Documenter l'accessibilité pendant le processus de conception UX aide les équipes à adopter un état d'esprit d'accessibilité. ( Grand aperçu )

Elise suggère d'aborder la documentation sur l'accessibilité en deux étapes : premièrement, définir le comportement du clavier, puis spécifier des étiquettes sémantiques compréhensibles par la technologie d'assistance. Si vous voulez essayer, Elise a résumé tout ce que vous devez savoir sur l'approche dans un article. Une excellente occasion de repenser votre processus actuel.

Gestion de la concentration

La gestion de la concentration est une partie nécessaire mais souvent difficile pour rendre des applications complexes accessibles. Nous devons considérer que l'ordre de focus est logique, que le focus est déplacé correctement sur tous les composants personnalisés et que chaque élément interactif a un style de focus clair.

Fonctionnalité Firefox pour étiqueter tous les éléments focalisables activés sur la page Smashing Magazine
Vérifiez rapidement votre ordre de mise au point sans avoir à parcourir toute la page avec l'inspecteur d'accessibilité de Firefox. ( Grand aperçu )

Ce bookmarklet de Level Access étiquette chaque élément pouvant être mis au point sur la page, afin que vous puissiez vérifier que l'ordre de mise au point correspond à l'ordre de lecture. Pour les utilisateurs de Firefox, l'inspecteur d'accessibilité de Firefox a ajouté cette fonctionnalité depuis la version 84.

Dans les bases de code complexes, où différents composants ou code tiers peuvent déplacer le focus de manière inattendue, ce petit extrait de Scott Vinkle peut vous aider à voir quel élément a actuellement le focus. Si j'ai du mal à déplacer le focus par d'autres parties de mon application, j'aime parfois aussi remplacer console.log par console.trace pour déterminer exactement quelle fonction déplace le focus.

Afin de tester tous les styles de focus sur une page Web, nous pouvons utiliser le script de Scott O'Hara comme point de départ. Tabuler sur chaque élément peut devenir fastidieux après un certain temps, donc un script pour faire pivoter chaque élément peut nous aider à nous assurer que nos styles de focus sont cohérents et fonctionnent dans le contexte de la page.

Une page de démonstration pour le Bookmarklet Tabindex. Chaque élément avec un tabindex est identifié et les liens avec des tabindex positifs sont marqués d'un X rouge.
Trouvez et supprimez tous les tabindex positifs sur votre page avec le bookmarklet tabindex. ( Grand aperçu )

Définir un tabindex positif pour essayer de corriger l'ordre de mise au point est un piège d'accessibilité courant. Les éléments qui ont un tabindex positif forceront le navigateur à tabuler dessus en premier. Bien qu'il ne s'agisse pas techniquement d'une erreur, cela est souvent inattendu et peut causer plus de problèmes qu'il n'en résout. Le bookmarklet tabindex de Paul J. Adam vous permet de mettre en surbrillance tous les éléments auxquels l'attribut tabindex est appliqué.

Convivialité de la mise en page

L'ordre de lecture du document peut parfois ne pas être synchronisé avec ce à quoi un spectateur pourrait s'attendre si une mise en page repose trop sur la propriété d'ordre CSS Grid ou Flexbox. Adrian Roselli a codé un bookmarklet pour garder une trace de l'ordre de lecture pour vous aider à vous assurer que votre site respecte la directive de séquence significative.

Page Smashing Magazine avec le bookmarklet d'espacement de texte appliqué.
Le bookmarklet de Steve Faulkner vous permet de vérifier la résilience de la mise en page de votre texte lorsque l'exigence maximale des paramètres d'espacement du texte est appliquée. ( Grand aperçu )

Les WCAG contiennent un critère d'espacement du texte où tout le contenu doit toujours fonctionner lorsque certains paramètres de texte sont appliqués. Pour tester cela, Steve Faulkner a créé un bookmarklet qui applique automatiquement les paramètres d'espacement de texte requis à tout le texte d'une page. Éviter des choses comme les hauteurs fixes et autoriser le débordement rend non seulement votre site plus accessible, mais garantit également que le contenu que vous y mettez ne cassera pas la mise en page, ce dont vos éditeurs de contenu vous remercieront.

Jared Smith a construit un bookmarklet pour transformer votre curseur en une boîte de 44 × 44 pixels afin que vous puissiez le survoler sur vos contrôles pour vous assurer qu'ils répondent au critère de taille cible recommandé .

Linters

Les linters sont une classe d'outils qui détectent les erreurs en analysant le code source avant l'exécution ou la construction de l'application. En utilisant des linters, nous pouvons corriger des bogues plus petits avant même d'exécuter ou de construire le code, ce qui permet d'économiser un temps d'assurance qualité précieux plus tard.

De nombreux développeurs connaissent et utilisent déjà ESLint dans une certaine mesure. Au lieu d'apprendre de nouveaux outils, il est possible de prendre une longueur d'avance sur vos tests d'accessibilité en incluant un nouveau plug-in dans votre flux de travail existant. Eslint-plugin-jsx-a11y est un plugin ESLint pour vos éléments JSX, où toutes les erreurs seront affichées au fur et à mesure que vous écrivez votre code. Scott Vinkle a rédigé un guide utile sur sa configuration.

Extension Axe Linter VS Code affichant un avertissement pour un élément img sans texte alternatif.
Axe Linter est un outil qui peut détecter les erreurs d'accessibilité avant même que votre code ne soit exécuté. ( Grand aperçu )

Deque a sorti ax Linter, disponible sous forme d'application Github ou d'extension de code VS. Ax Linter vérifie les fichiers React, Vue, HTML et Markdown par rapport aux règles de base sans aucune configuration, il est donc facile de se lancer et de fonctionner, même si vous êtes invité à transmettre vos propres options. Une fonctionnalité utile est qu'il fait la distinction entre WCAG 2 et WCAG 2.1, ce qui est utile si vous essayez de respecter une norme spécifique.

Balisage

Le Web est conçu pour être résilient. Si vous avez cassé le balisage, le navigateur fera de son mieux pour corriger toute erreur. Cependant, cela peut avoir des effets secondaires imprévus, tant du point de vue du style que de celui de l'accessibilité. L'exécution de votre sortie via le validateur HTML du W3C peut aider à détecter des éléments tels que des balises cassées, des attributs appliqués à des éléments qui ne devraient pas en avoir et d'autres erreurs HTML. Deque a créé un bookmarklet W3C HTML Validator basé sur le même moteur qui vous permet de vérifier le balisage sur l'hôte local ou les pages protégées par mot de passe que le validateur régulier ne peut pas atteindre.

Page d'accueil A11y.css montrant les différentes manières de l'installer.
A11y.css est une feuille de style qui vous permet d'analyser rapidement votre code HTML à la recherche de problèmes d'accessibilité. ( Grand aperçu )

Si vous êtes plutôt une personne visuelle, le projet a11y.css de Gael Poupard est une feuille de style qui vérifie les risques possibles dans votre balisage. Disponible à la fois au format extension ou bookmarklet, vous pouvez personnaliser la langue ainsi que le niveau de conseil affiché. Dans le même ordre d'idées, sa11y est un outil qui peut être installé en tant que bookmarklet ou intégré à votre base de code. Sa11y est spécialement conçu pour examiner la sortie du contenu CMS . Il affiche tous les avertissements dans un langage non technique afin que les éditeurs de contenu puissent comprendre et apporter les corrections nécessaires.

Niveau de lecture

Un site accessible commence par un contenu accessible. L'accessibilité cognitive a été un objectif majeur de l'ébauche en cours des WCAG 3 et est actuellement mentionnée dans le critère de succès 3.1.5, ce qui suggère que les auteurs visent à ce que le contenu soit compréhensible par un niveau de lecture du secondaire inférieur (7e à la 9e année).

Écran par défaut de l'application Hemingway, affichant du texte avec des erreurs de lisibilité et des avertissements mis en évidence.
Hemingway comporte un éditeur sur la gauche et un panneau latéral contenant des informations sur le texte que vous êtes en train de rédiger. ( Grand aperçu )

L'éditeur Hemingway calcule le niveau de lecture de votre contenu au fur et à mesure que vous l'écrivez, afin que vous puissiez le modifier pour vous assurer qu'il est facilement compréhensible. Le panneau sur le côté propose des suggestions sur la façon dont vous pouvez améliorer votre contenu pour le rendre plus lisible. Si votre site a déjà été publié, Juicy Studio a produit un outil de lisibilité dans lequel vous transmettez une URL au formulaire fourni et le contenu de votre site est analysé et noté à l'aide de trois algorithmes de niveau de lecture différents. Il y a aussi une explication utile sur ce que chacun de ces scores implique. Cependant, l'une des limites de cet outil particulier est qu'il prend en compte tout le texte rendu sur la page, y compris des éléments tels que la navigation et le texte du pied de page, ce qui peut fausser les résultats.

Suites de tests et intégration continue

L'inconvénient de la plupart des outils de test automatisés est qu'ils obligent les utilisateurs à les exécuter dans le navigateur. Si vous travaillez sur une seule grande base de code, vous pouvez intégrer des tests d'accessibilité dans votre processus de test existant ou dans le cadre de votre flux d'intégration continue. Lorsque vous écrivez des tests personnalisés, vous avez une connaissance de votre application que les outils de test automatisés n'ont pas, ce qui vous permet d'effectuer des tests personnalisés et complets de manière plus évolutive.

Extrait de code Axe-core démontrant que vous pouvez générer des erreurs si des violations sont détectées
Créez votre propre flux de test d'accessibilité personnalisé en utilisant axe-core comme base. ( Grand aperçu )

Encore une fois, axe-core apparaît comme une bibliothèque open-source qui sous-tend fréquemment la plupart de ces outils, donc si oui ou non un outil fonctionne pour vous sera probablement basé sur la façon dont il s'intègre à votre code plutôt que sur les différences dans les résultats des tests. . Marcy Sutton a publié un guide indépendant du framework pour commencer à écrire des tests automatisés d'accessibilité. Elle couvre la différence entre les tests unitaires et les tests d'intégration et explique pourquoi vous pouvez choisir l'un plutôt que l'autre dans différents scénarios.

Si vous avez déjà un framework de test que vous appréciez, il y a de fortes chances qu'il existe déjà une bibliothèque qui intègre axe-core . Par exemple, Josh McClure a rédigé un guide qui utilise cypress-axe, et Nick Colley a produit une version aromatisée Jest dans jest-axe.

Pa11y est un outil qui fournit une interface configurable autour des tests qui est également disponible dans une version CI également. Ses nombreuses options de configuration peuvent vous permettre de résoudre des problèmes complexes pouvant survenir lors de tests. Par exemple, la fonctionnalité d'actions vous permet de passer un tableau d'actions avant d'exécuter les tests et peut être utile pour tester les écrans qui nécessitent une authentification avant d'accéder à la page.

Préférences de l'utilisateur

Il existe de nombreuses nouvelles requêtes multimédias pour aider à détecter le système d'exploitation et les préférences du navigateur de l'utilisateur. De nos jours, les développeurs détectent souvent ces paramètres afin de définir la valeur par défaut pour des éléments tels que les préférences de mouvement et le mode sombre, mais cela peut également entraîner des bogues difficiles à reproduire si vous n'avez pas les mêmes paramètres.

Page de démonstration Magica11y montrant diverses préférences de l'utilisateur, le mode sombre est activé et les animations sont autorisées.
Une bibliothèque petite mais utile : Magica11y peut vous aider à déboguer les problèmes créés par différentes préférences utilisateur. ( Grand aperçu )

Magica11y est un ensemble de fonctions qui vous permet de déterminer les préférences de vos utilisateurs. Envoyez la page de documentation à des testeurs non techniques ou intégrez-les dans votre application afin de pouvoir reproduire plus précisément les environnements de vos utilisateurs.

Emballer

On estime que les tests d'accessibilité automatisés ne peuvent détecter que 30 % de toutes les erreurs d'accessibilité. Même si l'outillage continue de s'améliorer, il ne remplacera jamais l'inclusion des personnes handicapées dans votre processus de conception et de développement. Un processus d'accessibilité durable et holistique peut impliquer que toute l'équipe utilise des outils pour détecter autant de ces erreurs que possible dès le début du processus, au lieu de laisser aux testeurs et aux utilisateurs handicapés le soin de trouver et de signaler ces problèmes plus tard.

Besoin d'encore plus d'outillage ? Le projet A11y et Stark ont ​​organisé des listes d'outils d'accessibilité supplémentaires pour les développeurs et les utilisateurs ! Ou n'hésitez pas à laisser des suggestions dans les commentaires ci-dessous, nous aimerions savoir quels outils vous intégrez dans votre flux de travail.