axe DevTools Mobile 14. August 2024 Versionshinweise
14. August 2024
Komponentenversionen
– iOS SDK (axeDevToolsXCUI v2.12.3)
- iOS Analyzer (axe-devtools-mobile-analyzer v1.2.0)
- Android SDK (axe-devtools-android v5.5.2)
- Android Analyzer (axe Accessibility Analyzer v1.8.4)
So aktualisieren Sie: iOS SDK, iOS Analyzer, Android SDK, Android Analyzer
Was ist neu?
Übersicht
Verbesserte Scan- und Detailansichten von Problemen
Wir haben die Scan- und Problemdetailbildschirme im axe DevTools Mobile Dashboard aktualisiert, um ihre Verwendung zu vereinfachen und die Grundlage für zukünftige Verbesserungen zu schaffen. Auch wenn die Bildschirme anders aussehen, sind die wichtigen Funktionen weiterhin verfügbar. Haben Sie Feedback? Bitte teilen Sie uns dies per E-Mail mit an mobile-feedback@deque.com
iOS
Regel-Engine im Analyzer-Projekt integriert
Wir haben die Abhängigkeit vom Swift Package Manager zum Abrufen von axeDevToolsXCUI im iOS Analyzer Xcode-Projekt entfernt. Die neueste Version des XCUI-Frameworks ist jetzt für jedes Release in den Analyzer eingebettet. Diese Änderung erleichtert die Aktualisierung des Analyzer-Projekts und stellt sicher, dass Sie über die neueste Regel-Engine verfügen.
Fehlerbehebungen
Android
- Ein Problem wurde behoben, bei dem die Analyzer-App abstürzte, wenn das Gerät auf Android API-Level 34 neu gestartet wurde
- Erweiterungen und Verbesserungen zur Erhöhung der Genauigkeit und Reduzierung von Fehlalarmen bei den Regeln für Farbkontrast und Touch-Zielgröße
- Nutzungsdaten sind jetzt in axe-Berichten verfügbar
iOS
- Verbesserte Erkennung, ob SwiftUI-Ansichten für den Benutzer sichtbar sind. Dies reduziert Fehlalarme und verbessert die Genauigkeit verschiedener Regeln.
- Erweiterungen und Verbesserungen zur Erhöhung der Genauigkeit und Reduzierung von Fehlalarmen in den folgenden Regeln: Unzugängliche Aktion, Fokussierbarer Text, Bildschirmtitel, Name verschachtelter Elemente
Bekannte Probleme
Wenn bei Ihnen eines der folgenden Probleme auftritt, kontaktieren Sie uns bitte unter helpdesk@deque.com oder support.deque.com. Wir können Sie dann benachrichtigen, sobald das Problem behoben ist, oder Ihnen einen Workaround empfehlen, falls keiner aufgeführt ist.
- Automatisierte Tests von axe DevTools Mobile laufen auf nativen iOS-, nativen Android- und React Native-Anwendungen. Bitte wenden Sie sich für Lösungen zum Testen der Barrierefreiheit für Ihren Tech-Stack an Ihren Deque-Vertreter.
- Obwohl Sie möglicherweise einige Ergebnisse aus Webansichten oder gerenderten PDFs erhalten, empfehlen wir dringend, die Tests mit axe DevTools for Web oder axe Monitor für umfassendste Zugänglichkeitstests im Web durchzuführen.
axe DevTools Mobile für iOS
Fehler im Analyzer-Projekt und beim Testen nach Bundle-ID in 2.8.1
Die Funktion zum Testen einer Anwendung per Bundle-ID war in Version 2.8.1 defekt, was zu einem Fehler mit dem Titel „Kein Zielanwendungspfad über Testkonfiguration angegeben: …“ führte. Aktualisieren Sie auf 2.8.2 oder die neueste Version, um den Fehler zu beheben. Aktualisieren Sie im iOS Analyzer-Projekt auf die neueste Version.
Falsch-Positiv: LabelInName und LabelAtFront in SwiftUI und plattformübergreifenden Apps
Einige Bildschirme melden möglicherweise falsche Positivwerte mit LabelInName und LabelAtFront, da eine falsche Eigenschaft „associatedText“ gefunden wurde (#1622).
Regel für dynamische Typunterstützung funktioniert nicht mit dem iOS 15 Pro-Simulator
Es gibt ein Problem beim iPhone 15 Pro-Simulator, das die Ausführung der Regel „Unterstützt dynamischen Typ“ verhindert. Wenn Sie die Regel „Unterstützt dynamischen Typ“ aktiviert haben, können Sie sie nicht mit einem iPhone 15 Pro-Simulator testen. Ein Fehler wurde bei Apple gemeldet.
Regeln gegen verschachtelte Steuerelemente
Bei der Suche nach einer Verbesserung unserer Regeln haben wir festgestellt, dass in XCTest verschachtelte Steuerelemente nicht im Zugänglichkeitsbaum zurückgegeben werden. Ein Fehler wurde bei Apple gemeldet. (#1110)
ImageView-Namensregel benötigt Überprüfungsergebnisse für UIKit-Apps
In UIKit-Apps ist ein Bild ohne `accessibilityLabel` mit unterstützender Technologie standardmäßig nicht fokussierbar.
Die Eigenschaften, die wir zur Überprüfung der Fokussierbarkeit aus Apple verwenden, können ungenau sein, wenn für das Bild ein `accessibilityIdentifier` festgelegt ist. Aufgrund dieses unerwarteten Verhaltens werden Ergebnisse für Probleme mit ImageView-Namen in UIKit-Apps als „Benötigt Überprüfung“ gemeldet. Ein Fehlerbericht wurde bei Apple eingereicht. (#1633)
Falschmeldung: In der Scroll-Ansicht, Label im Namen, Beschriftung vorne und v2.11.0 Bildansichtsname und ActiveControlName
Wir arbeiten aktiv an der Behebung der folgenden Fehlalarme und aktualisieren diese Liste, sobald Korrekturen veröffentlicht werden.
In der Scroll-Ansicht
Kann Probleme mit Text in Elementen mit Bannerverhalten melden. Um diese Elemente für diejenigen verfügbar zu machen, die größeren Text benötigen, verwenden Sie UILargeContentViewer
. (#622)
v2.11.0 Bildansichts-Name & AktiverSteuerungsname
Wenn für eine UIImageView ein `accessibilityIdentifier` gesetzt ist, diese jedoch nicht von VoiceOver fokussiert werden kann, und darin fokussierbare Steuerelemente verschachtelt sind, meldet ActiveControlName möglicherweise einen Falsch Positiv für die UIImageView. Durch das Entfernen von `accessibilityIdentifier` wird das Problem behoben. Ein Fehler wurde bei Apple gemeldet. (#1633)
Beschriftung im Namen und Beschriftung am Anfang
Diese beiden Regeln suchen nach der sichtbaren Beschriftung eines Steuerelements unter den benachbarten Elementen, um den Regelstatus zu ermitteln. In einigen Ansichtshierarchien wird möglicherweise der falsche Text in der Nähe erkannt, was zum Fehlschlagen dieser Regeln führt. (#1622)
axe DevTools Mobile für Android
Screenshot wird als schwarzes Kästchen im Dashboard angezeigt
Um die volle Funktionalität von axe DevTools für Mobilgeräte freizuschalten, stellen Sie sicher, dass Screenshots aktiviert sind. Um Sicherheitsbedenken zu vermeiden, empfehlen wir, Screenshots in einer Debug- oder Testversion Ihrer App zu aktivieren, die Mock-Daten verwendet. Sehen Sie sich unsere Anleitung zum Aktivieren von Screenshots in Android-Apps. an.
Absturz, wenn `minifiedEnabled` auf „true“ gesetzt ist
Wenn Sie Ihren Build minimieren, wird ein Absturz mit einem Fehlerprotokoll angezeigt, das meldet, dass beim Versuch, sich bei der axe DevTools-Bibliothek anzumelden, ein Adapter nicht gefunden werden konnte. 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 versucht möglicherweise, die Bibliothek axeDevTools zu minimieren, was zu einem Fehler ähnlich dem folgenden führt:
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)Um diesen Fehler zu beheben, fügen Sie Ihrer ProGuard-Datei die folgende Zeile hinzu, um die axeDevTools-Klassen beizubehalten:
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 ein Fehler wie `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)` oder `No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?` auftritt, beziehen Sie sich bitte auf Compose setTestTag API.
Protokollmeldung:MlKitContext has not been initialized
Wenn diese Meldung angezeigt wird, werden einige Regelergebnisse möglicherweise nicht wie erwartet zurückgegeben, wenn diese Regel künstliche Intelligenz nutzt. Zu den betroffenen Regeln gehören Farbkontrast, fokussierbarer Text und verschachtelter Elementname. (#841)
MAUI: Regel 'Textname bearbeiten'
Aufgrund von Einschränkungen bei der Darstellung der MAUI-App-Architektur im Android-Ökosystem wird die Regel „Textnamen bearbeiten“ im Dashboard als „Überprüfung erforderlich“ angezeigt, wenn bei SDK-Version 5.5.0 und höher ein Fehler vermutet wird. Bitte bestätigen Sie für diesen Fall das korrekte Verhalten manuell.
Natives Android: Benutzerdefinierte Dialoge/Modalen
Wenn Sie benutzerdefinierte Dialoge oder Modale implementieren, die die nativen Steuerelemente nicht erweitern, erhalten Sie möglicherweise Ergebnisse für Ansichten hinter dem Modal. In diesem Fall empfehlen wir, unser Tool nicht für diese benutzerdefinierten Modale oder Dialoge auszuführen, sondern sie stattdessen manuell zu überprüfen, um sicherzustellen, dass sie sich mit der assistiven Technologie wie gewünscht verhalten.
axe DevTools Mobile Dashboard
Fehlender Screenshot
Wenn der Screenshot auf der Seite mit den Scandetails fehlt, verhindert Ihre App möglicherweise, dass Screenshots erstellt werden. Dies geschieht häufig aus Sicherheitsgründen in Ihrer Produktionsanwendung. Erwägen Sie das Entfernen dieser Anforderung für Ihren Testbuild, um die volle Funktionalität im axe DevTools Mobile Dashboard zu ermöglichen.
Einige Android-Prüfnamen sind unformatiert
Bei einigen Android-Prüfnamen, die standardmäßig als Bildschirmtitel angezeigt werden, wird der vollständige Klassenname einschließlich der Bundle-ID angezeigt. In einer zukünftigen Version wird dies behoben, sodass der Bildschirmtitel in einen besser lesbaren Namen formatiert wird. Als Workaround können Sie den Prüfname über das Dashboard oder Frameworks festlegen. (#1643)
axe DevTools Mobile für Appium
Falsch Positive: Name der aktiven Ansicht, Abstand des Touch-Ziels
Wir arbeiten aktiv an der Behebung der folgenden Fehlalarme und aktualisieren diese Liste, sobald Korrekturen veröffentlicht werden.
Name der aktiven Ansicht
Aufgrund begrenzter Informationen, die über die Appium-Plattform verfügbar sind, haben wir eine Falsch-Positiv-Meldung für den Active View-Namen festgestellt, wenn die labeledBy
-Eigenschaft zum Bereitstellen einer Beschriftung für ein Button-Element verwendet wird.
Touch Target Spacing auf der iOS-Plattform für SwiftUI & React Native-Apps
Bei größeren Steuerelementen könnte der Abstand zwischen Berührungszielen-Standard nicht erfüllt sein, wenn ihre Mindestgröße von 24 pt x 24 pt überschritten wird. (#411)
False Negative: Nicht zugängliche Aktion auf Android React Native
Beim Scannen von React Native-Apps auf der Android-Plattform werden Ihnen möglicherweise widersprüchliche Ergebnisse für diese neue Regel angezeigt. Einige Ansichten verfügen über ein verschachteltes Schaltflächenelement, was zu einem Fehler bei der übergeordneten Schaltfläche, aber zu einem Bestehen bei der untergeordneten Schaltfläche führt. (#407)
React Native: Label In Name & Label At Front
Aufgrund von Einschränkungen bei den über die Appium-Plattform verfügbaren Informationen haben wir festgestellt, dass die Regeln „Label In Name“ und „Label At Front“ für mit React Native erstellte Apps nicht ausgeführt werden können. Wir suchen nach Lösungen und erwarten eine Behebung in einer zukünftigen Version.
React Native & .NET MAUI: Inspektion der Ansichtshierarchie zeigt vorherigen Bildschirm
Manchmal benötigt die Appium-Seitenquelleneigenschaft zwischen den Scans zusätzliche Zeit, um aktualisiert zu werden. Wenn dies geschieht, wird Ihnen beim Verwenden der Überprüfungsfunktion auf dem Dashboard die Ansichtshierarchie eines vorherigen Bildschirms angezeigt. Um das Problem zu beheben, fügen Sie vor dem Aufruf der Seitenquellen-API ein kleines Timeout hinzu, um den Barrierefreiheitsscan auszulösen. Beispiel:
await driver.pause(1000); const result = await driver.getPageSource();
Einschränkung: Image View Name für dekorative Bilder in Android
Aufgrund von Einschränkungen bei den über die Appium-Plattform verfügbaren Informationen haben wir festgestellt, dass die Regel „Image View Name“ die Erfolgskriterien für dekorative Bilder in Android nicht genau testen kann. Ergebnisse für Bilder ohne zugänglichen Namen werden im Dashboard zur weiteren Analyse als „Muss überprüft werden“ angezeigt.