Notes de version d'Axe DevTools Mobile du 30 août 2023

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

30 août 2023

Not for use with personal data

Versions des composants

  • axeDevToolsXCUI v2.7.0
  • axe-devtools-android v4.1.0
  • Axe DevTools Reporter CLI v4.7.0

Quoi de neuf ?

WCAG 2.2 est actuellement au statut de Recommandation Proposée. Les résultats de la règle WCAG 2.2, « Espacement des cibles tactiles », seront marqués comme Expérimentaux jusqu'à ce que WCAG 2.2 atteigne le statut de Recommandation. Cela signifie que les résultats de cette règle apparaîtront désormais dans vos comptes de résultats Échec, Réussite et Nécessite une révision sous la rubrique Expérimental. (Cette règle apparaissait auparavant dans le compte Ignore.) Vous pouvez également désactiver les règles expérimentales, si vous préférez. En savoir plus sur règles expérimentales.

Android

  • Vous pouvez maintenant ignorer des règles dans vos tests UI automatisés (Espresso ou UI Automator) en utilisant le nom de la ressource ID de vue. Utilisez ceci pour ignorer les règles lors du passage dans le Instrumentation Registry.

iOS

Reporter CLI

  • Vous pouvez maintenant enregistrer des rapports au format CSV et JUnit XML en plus du HTML. En savoir plus sur le Axe DevTools Reporter CLI.

Corrections de bugs

iOS

  • Amélioration de la précision des résultats lorsque les contrôles sont désactivés.
  • Mise à jour de la règle « Contraste des couleurs » pour s'assurer qu'elle ne s'exécute pas sur les vues atténuées derrière un modal.
  • Fusionnement des appels de mise à jour du nom de l'analyse et des étiquettes en une seule requête réseau pour améliorer les performances.

Android

  • Les tests UI Automator attendront désormais que la mise à jour de la fenêtre soit terminée avant de scanner afin d'éviter de capturer une capture d'écran obsolète.
  • Correction d'un faux positif dans la règle « Nom de texte à éditer » pour Compose. Cette règle ne signalera plus d'échec lorsqu'un champ de texte Compose contient une étiquette.
  • Correction de la règle « Valeur de texte à éditer » pour s'exécuter sur tous les éléments Compose TextField.
  • Correction d'un problème de calcul avec la règle « Espacement des cibles tactiles ».

Tableau de bord

  • Résolution d'un problème de la dernière version qui provoquait un changement d'ordre des problèmes dans les analyses.

Mises à jour

Rappel : Depuis le 16 août 2023, nous avons cessé de publier des mises à jour du framework UIKit pour les tests automatisés sur les applications iOS. Nous continuerons à offrir ce framework dans un avenir prévisible, mais n'effectuerons plus de corrections de bugs ou de mises à jour. Nous vous encourageons à passer au framework XCUI qui sera mis à jour avec de nouvelles règles et améliorations à l'avenir. Si vous utilisez actuellement le framework UIKit pour des tests unitaires ou UI automatisés et que vous souhaitez obtenir de l'aide pour passer au framework XCUI, merci de nous le faire savoir. Soumettez une demande à support.deque.com, ou envoyez un email à helpdesk@deque.com.

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 alors vous avertir une fois qu'il sera résolu ou d'une solution de contournement identifiée si aucune n'est répertoriée.

important
  • 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 tests d'accessibilité sur votre conjoncture technologique.
  • Pour vous aider à obtenir des résultats précis et des conseils de remédiation applicables, les règles Axe DevTools Mobile ne s'exécutent pas dans les vues web ou les PDF rendus. Pour tester le contenu HTML, merci d'utiliser Axe DevTools pour le Web. Axe Monitor prend en charge l'analyse des PDF pour l'accessibilité.

Axe DevTools Mobile pour iOS

axeDevToolsUIKit.xcframework

Les vues construites avec SwiftUI ne peuvent pas être testées à l'aide de ce framework pour les tests automatisés.

Utilisez le framework axeDevToolsXCUI dans les tests UI pour les vues SwiftUI.

Le support des règles personnalisées est disponible uniquement en Swift

L'API de règles personnalisées n'est pas ouverte à Objective-C.

Faux positifs : InScrollView, SupportsDynamicType, Colliding Views

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.

InScrollView
InScrollView peut signaler des problèmes pour le texte au sein d'éléments se comportant comme des bannières. Pour rendre ces éléments accessibles à ceux qui nécessitent un texte plus grand, utilisez UILargeContentViewer.

SupportsDynamicType
Vous pouvez voir des faux positifs dans les scénarios suivants :

  • Si vous utilisez la UIContentSizeCategoryDidChange notification, le framework peut incorrectement indiquer que le texte ne répond pas à la taille dynamique dans les tests UI.
  • Si vous utilisez NotificationCenter.default.addObserver(forName:.., object:.., queue:.., using:..) pour répondre à la UIContentSizeCategoryDidChange notification.
  • Si vous utilisez traitCollectionDidChange sur la vue parente d'un texte ou le contrôleur de vue pour répondre à la taille dynamique.
Colliding Views
When a scrollable subview contains text, and that subview does not span to the edge of the screen's bounds, you will see failures for text located within the view's bounds.

axeDevToolsXCUI.xcframework

Sélecteur SwiftUI et Sélecteur UIKit

Les vues Sélecteur dans SwiftUI et UIKit peuvent bloquer le framework sur les simulateurs ou les appareils. (#636)

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 retournés dans l'arborescence d'accessibilité. Un bug a été signalé auprès d'Apple. (#1110)

Faux positif : dans la vue défilante, ActiveControlName

Nous travaillons activement sur les corrections des 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 au sein d'éléments qui se comportent comme des bannières. Pour rendre ces éléments accessibles à ceux qui ont besoin de texte plus grand, utilisez UILargeContentViewer. (#622) ActiveControlName
Si une UIImageView a un `accessibilityIdentifier` défini mais n'est pas focalisable par VoiceOver, et qu'elle a des contrôles focalisables imbriqués, ActiveControlName peut signaler un faux positif sur la UIImageView. Supprimer le `accessibilityIdentifier` résout le problème. (#1178)

Faux négatif : Nom de la vue d'image, texte focalisable dans iOS 13 à iOS 14.8.1

Nous travaillons activement sur les corrections des faux négatifs suivants et mettrons à jour cette liste au fur et à mesure que les correctifs seront publiés.

Image View Name
Si une UIImageView a un `accessibilityIdentifier` défini mais n'est pas focalisable par VoiceOver, ImageViewName peut signaler un faux négatif sur la UIImageView. Supprimer le `accessibilityIdentifier` résout le problème. (#1188) Focusable Text
Les éléments marqués comme non accessibles peuvent produire des résultats incorrects à cause d'un bug dans le framework d'Apple.

Axe DevTools Mobile pour Android

Crash lors de l'utilisation de Proguard

Si votre version de débogage ou de test utilise Proguard, suivez les étapes pour ignorer Deque dans vos paramètres Proguard.

Crash lorsque `minifiedEnabled` est défini sur true

Si vous minifiez votre build, vous verrez un crash avec un journal d'erreurs indiquant 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)

Erreurs de compilation avec le projet Java8 et Axe DevTools Android 3.1.0

Essayez les importations suivantes :

implementation 'androidx.core:core-ktx:1.9.0'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4'
	
After importing the above library, if you see errors related to minSDK version for core-ktx library try the following in your project’s Android Manifest:
<uses-sdk tools:overrideLibrary="androidx.core" />

Les builds avec r8 activé génèrent une erreur

Une 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)

Si vous rencontrez une erreur du type `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)`, veuillez nous contacter à helpdesk@deque.com ou support.deque.com pour obtenir de l'aide. Dans certaines conditions, il peut y avoir deux nœuds racine Compose existant en même temps.

Tableau de bord de DevTools Mobile Axe

Certains noms de scan Android ne sont pas formatés

Certains noms de scan Android par défaut au titre de l'écran apparaîtront comme le nom complet de la classe incluant l'identifiant du bundle. Dans une future version, cela sera résolu pour que le titre de l'écran soit formaté en un nom plus lisible. Comme solution de contournement, vous pouvez définir le nom du scan depuis le tableau de bord ou les frameworks. (#1643)