Notes de mise à jour d’Axe DevTools Mobile du 11 décembre 2024
11 décembre 2024
Corrections
- Améliorations multiples pour l’accessibilité sur le tableau de bord Axe DevTools Mobile
- Suppression de l’espace blanc supplémentaire sous le tableau dans le tableau de bord Axe DevTools Mobile
- Augmentation de la taille de la capture d’écran sur la page des détails des problèmes
- Correction d’un problème où la sauvegarde d’un scan renvoyait une erreur
Dépréciations
Nous avons supprimé les règles Android Compose et les contrôles actifs imbriqués iOS des paramètres des ensembles de règles personnalisées dans le tableau de bord Axe DevTools Mobile. Ces règles étaient dépréciées depuis plus d'un an et ne sont plus prises en charge.
Problèmes connus
Si vous rencontrez l'un des problèmes ci-dessous, veuillez nous contacter à helpdesk@deque.com ou à support.deque.com. Nous pourrons ainsi vous informer une fois qu'il sera résolu ou d'une solution de contournement identifiée si aucune n'est répertoriée.
- Les tests automatisés Axe DevTools Mobile fonctionnent sur les applications iOS natives, Android natives et React Native. Veuillez contacter votre représentant Deque pour des solutions de test d’accessibilité adaptées à votre stack technologique.
- Bien que vous puissiez obtenir certains résultats depuis les vues web ou les PDF rendus, nous recommandons fortement de tester avec Axe DevTools pour le Web ou Axe Monitor pour un test d'accessibilité web des plus complets.
iOS
Erreur dans le projet Analyzer et tests par ID de bundle dans la version 2.8.1
La fonctionnalité de test d'une application par identifiant de bundle a été cassée dans la version 2.8.1, ce qui a entraîné une erreur intitulée « Aucun chemin d'application cible spécifié via la configuration du test : ... ». Mettez à jour vers la version 2.8.2 ou la dernière version pour résoudre l'erreur. Mettez à jour vers la dernière version dans le projet iOS Analyzer.
Faux positif : LabelInName et LabelAtFront dans SwiftUI et applications multiplateformes
Certains écrans peuvent signaler de faux positifs avec LabelInName et LabelAtFront en raison d'une propriété associatedText incorrecte étant trouvée (#1622)
La règle Supports Dynamic Type ne fonctionne pas avec le simulateur iOS 15 Pro
Un problème affecte le simulateur iPhone 15 Pro, empêchant l'exécution de la règle Supports Dynamic Type. Si vous êtes inscrit à la règle Supports Dynamic Type, vous ne pourrez pas la tester avec un simulateur iPhone 15 Pro. Un bug a été signalé à Apple.
Règles contre les contrôles imbriqués
En examinant une amélioration pour nos règles, nous avons découvert que dans XCTest, les contrôles imbriqués ne sont pas renvoyés dans l'arbre d'accessibilité. Un bug a été signalé à Apple. (#1110)
La règle ImageView Name doit réviser les résultats pour les applications UIKit
Dans les applications UIKit, une image sans `accessibilityLabel` n'est pas focalisable avec la technologie d'assistance par défaut.
Les propriétés que nous utilisons pour vérifier la focalisabilité d'Apple peuvent être inexactes lorsqu'un `accessibilityIdentifier` est défini sur l'image. En raison de ce comportement inattendu, les résultats pour les problèmes ImageView Name dans les applications UIKit seront signalés comme nécessitant une révision. Un rapport de bug a été soumis à Apple. (#1633)
Faux positif : Dans la vue déroulante, Label In Name, Label at Front et la règle v2.11.0 ImageView Name & ActiveControlName
Nous travaillons activement sur des correctifs pour les faux positifs suivants et mettrons à jour cette liste au fur et à mesure que les correctifs seront publiés.
In Scroll View
Peut signaler des problèmes pour le texte dans des éléments se comportant comme des bannières. Pour rendre ces éléments disponibles à ceux qui nécessitent un texte plus grand, utilisez UILargeContentViewer. (#622)
v2.11.0 Image View Name & Active Control Name
Si un UIImageView a un `accessibilityIdentifier` défini mais n'est pas focalisable par VoiceOver, et qu'il a des contrôles focalisables imbriqués, ActiveControlName peut signaler un faux positif sur l'UIImageView. Supprimer le `accessibilityIdentifier` résout le problème. Un bug a été signalé à Apple. (#1633)
Label In Name and Label At Front
Ces deux règles recherchent l'étiquette visible d'un contrôle parmi les éléments à proximité pour aider à déterminer le statut de la règle. Dans certaines hiérarchies de vue, le texte incorrect à proximité peut être détecté, ce qui entraîne l'échec de ces règles. (#1622)
Android
Application Analyzer : le bouton d'action flottant disparaît
Introduite avec l'API 31 (Android 12) est la possibilité de masquer les superpositions non système. Pour utiliser l'application Axe Analyzer, veuillez vous assurer que ce paramètre n'est pas activé. Si vous avez choisi d'utiliser cette fonctionnalité pour ses améliorations de sécurité, nous recommandons de la désactiver pour les builds de tests internes où vous pouvez utiliser des données de test en toute sécurité et éliminer ainsi les préoccupations de sécurité. Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.
Pour utiliser l'application Axe Accessibility Analyzer, mettez à jour tous les appels à la méthode setHideOverlayWindows(true) à setHideOverlayWindows(false) sur les fenêtres d'activité concernées.
Capture d'écran manquante (boîte noire) dans le tableau de bord
Pour débloquer toutes les fonctionnalités d’Axe DevTools pour Mobile, assurez-vous que les captures d'écran sont activées. Nous recommandons d'activer les captures d'écran sur une version de débogage ou de test de votre application utilisant des données factices pour éviter les préoccupations de sécurité. Consultez notre guide pour activer les captures d'écran dans les applications Android.
Crash lorsque `minifiedEnabled` est défini sur true
Si vous minifiez votre build, un crash apparaîtra avec un journal d'erreurs signalant qu'un adaptateur n'a pas pu être trouvé lors de la tentative de connexion à la bibliothèque Axe DevTools. Désactivez la minification pour vos builds de débogage avec Axe DevTools implémenté. (#729)
Les builds avec r8 activé génèrent une erreur
Un build avec r8 activé peut tenter de minifier la bibliothèque axeDevTools entraînant une erreur similaire à :
Caused by: java.lang.NullPointerException: throw with null exception
at g.b.b.a$a.a(Unknown Source:1)
at g.b.b.a$a.a(Unknown Source:0)
at g.b.b.a.a(AccessToken.java:190)
To resolve this error add the following line to your ProGuard file to keep axeDevTools classes:keep class com.deque.** { *; }
Message d'erreur similaire à :
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
ou : No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?
Les API Compose sont dépréciées, veuillez utiliser le API indépendantes de la mise en page pour continuer à recevoir les mises à jour. Si vous continuez à utiliser les API Compose et que vous rencontrez une erreur du type `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)` ou `No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?`, veuillez vous référer à l'API Compose setTestTag.
Message du journal :MlKitContext has not been initialized
Si vous recevez ce message, certains résultats des règles peuvent ne pas être comme attendu lorsque cette règle utilise l'intelligence artificielle. Les règles affectées incluent le Contraste des Couleurs, le Texte Focusable et le Nom des Éléments Imbriqués. (#841)
MAUI : Règle du Nom d'Édition de Texte
En raison des limitations de l'architecture des applications MAUI lors du rendu dans l'écosystème Android, la règle du Nom d'Édition de Texte apparaîtra comme Besoin de Révision dans le tableau de bord lorsqu'un échec est suspecté pour la version SDK 5.5.0 et supérieure. Veuillez confirmer manuellement le comportement correct dans ce cas.
Android natif : Dialogues/Modales Personnalisés
Lorsque vous implémentez des dialogues ou modales personnalisés qui n'étendent pas les contrôles natifs, vous pouvez obtenir des résultats pour les vues derrière la modalité. Dans ce cas, nous recommandons de ne pas exécuter notre outil contre ces modales ou dialogues personnalisés et de les vérifier manuellement pour vous assurer qu'ils fonctionnent comme souhaité avec la technologie d'assistance.
Tableau de bord Web
Capture d'écran manquante
Si la capture d'écran est absente de la page des détails de l'analyse, votre application peut empêcher que des captures d'écran soient prises. Souvent, cela est fait pour des raisons de sécurité dans votre application de production. Envisagez de supprimer cette exigence pour votre version de test afin de permettre une fonctionnalité complète dans le Tableau de Bord Mobile d'Axe DevTools.
Certains noms d'analyse Android ne sont pas formatés
Certains noms d'analyse Android qui sont par défaut le titre de l'écran apparaîtront sous forme de nom de classe complet incluant l'identifiant du bundle. Dans une future version, cela sera résolu de manière à ce que le titre de l'écran soit formaté en un nom plus lisible. Comme solution de contournement, vous pouvez définir le nom de l'analyse depuis le tableau de bord ou les frameworks. (#1643)
