Axe DevTools Mobile Versionshinweise vom 28. Februar 2024
28. Februar 2024
Komponenten-Versionen
- axeDevToolsXCUI v2.9.1
- axe-devtools-android v5.2.0
Neuerungen
Verbesserte Appium-Lösung
- Eine verbesserte Lösung für die Nutzung von Appium wurde am 14. Februar veröffentlicht. Siehe die Versionshinweise.
Android
- Die Methode connect() zur Authentifizierung am Axe DevTools Mobile-Server wird zugunsten von loginWithUsername() oder loginWithApiKey() als veraltet eingestuft. API-Referenz
- Eine neue API ist jetzt verfügbar und ermöglicht die Verwendung von Test-Tags, um ein bestimmtes Composable in Jetpack Compose-Layouts zu lokalisieren und zu scannen. Dies kann nützlich sein, wenn ein Bildschirm eine Mischung aus Jetpack Compose- und XML-Layouts enthält. Beispiel
Fehlerbehebungen
iOS
- Ein falsches Negativ bei der Regel für den Namen des aktiven Steuerelements wurde behoben, bei dem ein
searchBarTextFieldohne zugängliches Label die Regel fälschlicherweise bestand. - Ein falsches Positiv bei der Farbkontrastrichtlinie in Textfeldern wurde behoben, wenn der Cursor vorhanden ist. Wenn ein Textfeld bearbeitet wird, wird es in den Status „Muss überprüft werden“ statt „Fehlgeschlagen“ gesetzt.
Android
- Ein Problem wurde behoben, bei dem der Mobile Analyzer manchmal abstürzte, während er plattformübergreifende Apps scannte.
- Falsche Positivmeldungen bei den Regeln für fokussierbaren Text und verschachtelte Elemente wurden behoben, die für Ansichten ausgeführt wurden, die für den Benutzer nicht sichtbar waren. Die Regel wird nicht mehr ausgeführt, es sei denn, die Ansicht ist auf dem Bildschirm sichtbar.
Bekannte Probleme
Wenn Sie eines der unten aufgeführten Probleme erleben, kontaktieren Sie uns bitte unter helpdesk@deque.com oder support.deque.com. Wir können Sie dann informieren, sobald es gelöst ist oder wenn ein bekannter Workaround verfügbar ist, falls keiner aufgeführt ist.
- Axe DevTools Mobile automatisierte Tests laufen auf nativen iOS-, nativen Android- und React Native-Anwendungen. Bitte kontaktieren Sie Ihren Deque-Ansprechpartner für Lösungen zur Barrierefreiheitstests auf Ihrem Tech-Stack.
- Während Sie möglicherweise einige Ergebnisse von Webansichten oder gerenderten PDFs erhalten, empfehlen wir dringend, für umfassendste Barrierefreiheitstests im Web Axe DevTools für das Web oder Axe Monitor zu verwenden.
Axe DevTools Mobile für iOS
Fehler im Analyzer-Projekt & Testen nach Bundle-ID in 2.8.1
Die Funktionalität beim Testen einer Anwendung anhand eines Bundle-Identifiers war in Version 2.8.1 defekt, was zu einem Fehler mit dem Titel „Kein Zielanwendungspfad angegeben durch Testkonfiguration: ...“ führte. Aktualisieren Sie auf Version 2.8.2 oder die neueste Version, um den Fehler zu beheben. Aktualisieren Sie auf die neueste Version im iOS Analyzer-Projekt.
Ansichten außerhalb des Bildschirms können Ergebnisse für SwiftUI-Apps zeigen, die in iOS 17 getestet werden
Mit Version 2.8.0 (Versionshinweise ansehen)werden keine Ergebnisse mehr für Ansichten gemeldet, die nicht sichtbar sind, einschließlich derer, die außerhalb des Bildschirms oder von einer anderen Ansicht verdeckt sind. Wir haben festgestellt, dass bei SwiftUI-Anwendungen, die in iOS 17 getestet werden, dennoch einige Ergebnisse angezeigt werden. (#1383)
Regel für dynamischen Schriftgrad funktioniert nicht mit iOS 15 Pro-Simulator
Es gibt ein Problem, das den iPhone 15 Pro-Simulator betrifft und verhindert, dass die Regel für dynamischen Schriftgrad ausgeführt wird. Wenn Sie für die Regel „Unterstützt dynamischen Schriftgrad“ angemeldet sind, können Sie sie mit einem iPhone 15 Pro-Simulator nicht testen. Ein Fehler wurde bei Apple gemeldet.
Regeln gegen verschachtelte Steuerelemente
Beim Überprüfen einer Verbesserung unserer Regeln haben wir festgestellt, dass in XCTest verschachtelte Steuerelemente nicht im Barrierefreiheitsbaum zurückgegeben werden. Ein Fehler wurde bei Apple gemeldet. (#1110)
Falsches Positiv: In der Bildlaufansicht, ActiveControlName
Wir arbeiten aktiv an Korrekturen für die folgenden falschen Positivmeldungen und werden diese Liste aktualisieren, sobald Korrekturen veröffentlicht werden.
In Scroll View
Kann Probleme für Texte innerhalb von Banner-verhaltenden Elementen melden. Um diese Elemente für Personen mit größerem Textbedarf verfügbar zu machen, verwenden Sie UILargeContentViewer. (#622)
ActiveControlName
Wenn eine UIImageView eine `accessibilityIdentifier` hat, aber nicht von VoiceOver fokussierbar ist und fokussierbare Steuerelemente darin verschachtelt sind, kann ActiveControlName auf der UIImageView ein falsches Positiv melden. Das Entfernen des `accessibilityIdentifier` behebt das Problem. Ein Fehler wurde bei Apple gemeldet. (#1226)
Falsches Negativ: Bildansicht-Name, fokussierbarer Text in iOS 13 bis iOS 14.8.1
Wir arbeiten aktiv an Korrekturen für die folgenden falschen Negativmeldungen und werden diese Liste aktualisieren, sobald Korrekturen veröffentlicht werden.
Image View Name
Wenn eine UIImageView eine `accessibilityIdentifier` hat, aber nicht von VoiceOver fokussierbar ist, kann ImageViewName auf der UIImageView ein falsches Negativ melden. Das Entfernen des `accessibilityIdentifier` behebt das Problem. Ein Fehler wurde bei Apple gemeldet. (#1226)
Focusable Text
Elemente, die als nicht barrierefreie Elemente gekennzeichnet sind, können aufgrund eines Fehlers im Apple-Framework unrichtige Ergebnisse melden.
Axe DevTools Mobile für Android
Absturz bei Verwendung von Proguard
Wenn Ihr Debug- oder Test-Build Proguard verwendet, folgen Sie den Schritten zur Ignorieren Sie Deque in Ihren Proguard-Einstellungen.
Absturz, wenn `minifiedEnabled` auf true gesetzt ist
Wenn Sie Ihr Build minimieren, tritt ein Absturz mit einem Fehlerprotokoll auf, das meldet, dass ein Adapter nicht gefunden werden konnte, wenn versucht wird, sich in der Axe DevTools-Bibliothek anzumelden. Deaktivieren Sie Minify für Ihre Debug-Builds mit implementierten Axe DevTools. (#729)
Builds mit aktiviertem r8 werfen einen Fehler
Ein Build mit aktiviertem r8 könnte versuchen, die axeDevTools-Bibliothek zu minimieren, was zu einem Fehler wie dem folgenden führen kann:
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.** { *; }
Fehlermeldung ähnlich wie:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
oder: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?
Wenn Sie auf einen Fehler wie „Es wurde genau '1' Knoten erwartet, aber '2' Knoten gefunden, die erfüllen: (isRoot)“ oder „Keine Ansicht initialisiert, haben Sie AxeDevToolsCompose.setComposeTestRule() aufgerufen?“ stoßen, konsultieren Sie bitte Compose setTestTag API.
Axe DevTools Mobile Dashboard
Fehlender Screenshot
Wenn der Screenshot auf der Scan-Detailseite fehlt, könnte Ihre App Screenshots verhindern. Oft geschieht dies aus Sicherheitsgründen in Ihrer Produktionsanwendung. Erwägen Sie, diese Anforderung für Ihr Test-Build zu entfernen, um volle Funktionalität im Axe DevTools Mobile Dashboard zu ermöglichen.
Einige Android-Scannamen sind unformatiert
Einige Android-Scannamen, die standardmäßig auf den Bildschirmtitel gesetzt sind, werden als vollständiger Klassenname einschließlich der Bundle-ID angezeigt. In einer zukünftigen Version wird dies so gelöst, dass der Bildschirmtitel in einen besser lesbaren Namen formatiert wird. Als Workaround können Sie den Scannamen im Dashboard oder über Frameworks festlegen. (#1643)
Axe DevTools Mobile für Appium
Falsch positiv: Aktiver Ansichtsname
Aufgrund von Einschränkungen bei den über die Appium-Plattform verfügbaren Informationen haben wir ein Falsch Positiv für den Aktiven Ansichtsname identifiziert, wenn die labeledBy -Eigenschaft verwendet wird, um einem Schaltflächenelement ein Label zuzuweisen. Wir erforschen Lösungen und erwarten eine Korrektur in einer zukünftigen Version.
React Native: Label Im Namen & Label Vorne
Aufgrund von Einschränkungen bei den über die Appium-Plattform verfügbaren Informationen haben wir festgestellt, dass die Regeln Label Im Namen & Label Vorne für Apps, die mit React Native erstellt wurden, nicht ausgeführt werden können. Wir erforschen Lösungen und erwarten eine Korrektur in einer zukünftigen Version.
React Native: Inspektionsansicht Hierarchie zeigt vorherigen Bildschirm
Manchmal benötigt die Appium-Quellseite-Eigenschaft zusätzliche Zeit, um zwischen Scans aktualisiert zu werden. Wenn dies passiert, sehen Sie die Ansichtenhierarchie eines vorherigen Bildschirms, wenn Sie die Inspektionsfunktion auf dem Dashboard verwenden. Um dies zu beheben, fügen Sie kurz vor dem Aufruf der Quellseite-API ein kleines Timeout hinzu, um den Accessibility-Scan auszulösen. Beispiel:
await driver.pause(1000);
const result = await driver.getPageSource();
