Axe DevTools Mobile Versionshinweise vom 21. Mai 2025

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

21. Mai 2025

Not for use with personal data

Komponenten-Versionen

iOS

  • iOS SDK (axeDevToolsXCUI v2.15.0)
  • iOS Analyzer (axe-devtools-mobile-analyzer v1.4.11)
  • iOS Appium Driver (axe-appium-xcuitest-driver v1.4.0)

Aktualisierungsvorgang: iOS-SDK, iOS Analyzer, iOS Appium-Treiber

Android

  • Android SDK (axe-devtools-android v6.3.0)
  • Android Analyzer (Axe Accessibility Analyzer v1.13.0)
  • Android Appium Driver (axe-appium-uiautomator2-driver v1.4.1)

Aktualisierungsvorgang Android-SDK, Android Analyzer, Android Appium-Treiber

Was ist neu?

Ausrichtung auf Regelquellen

Wenn Sie jetzt auf unsere Barrierefreiheitsregeln verweisen, werden Sie feststellen, dass sie entweder direkt mit den Erfolgskriterien der Web Content Accessibility Guidelines (WCAG) übereinstimmen oder dass sie als Best Practice gelten, definiert durch eine Anmerkung in den WCAG, Ratschläge von Deque-A11y-Experten oder Empfehlungen von Apple und Google.

Android SDK und Analyzer-App

Eine neue und verbesserte Methode zum Testen der Bildschirmorientierung wurde implementiert.

Experimentelle Regeln standardmäßig deaktiviert

Um das Verhalten von Axe DevTools für Web anzupassen, haben wir experimentelle Regeln standardmäßig im Axe DevTools Mobile Dashboard deaktiviert. Erfahren Sie mehr über experimentelle Regeln und wie Sie sie aktivieren können, wenn Sie möchten.

Fehlerbehebungen

iOS

  • Regeln verursachen keine Probleme mehr für Steuerelemente innerhalb der vom Betriebssystem bereitgestellten Tastatur
  • Verbesserungen in der Genauigkeit der Regeln „Label im Namen“ und „Aktives Steuerelement“

Android

  • Verbesserte Fehlerbehandlung für eine Ausnahme beim Sammeln von AccessibilityNodeInfo
  • Angepasste MLKit-Implementierung zur Reduzierung von Versionsinkompatibilitäten
  • Verbesserungen in der Genauigkeit der Regeln „EditText Name“ und „Farbkontrast“

Bekannte Probleme

Wenn Sie eines der unten aufgeführten Probleme haben, kontaktieren Sie uns bitte unter helpdesk@deque.com oder support.deque.com. Wir können Sie dann benachrichtigen, sobald es gelöst ist, oder über eine identifizierte Problemumgehung informieren, falls keine aufgeführt ist.

important
  • 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 Barrierefreiheitsprüfung in Ihrem Tech-Stack.
  • Obwohl Sie möglicherweise einige Ergebnisse von Web-Views oder gerenderten PDFs erhalten, empfehlen wir dringend, Axe DevTools für Web oder Axe Monitor für die umfassendste Barrierefreiheitsprüfung des Webs zu verwenden.

iOS

Color Contrast rule does not run when text and background colors are the same

Our Color Contrast rule depends on Machine Learning to detect text, which ensures that the text being scanned is visible to users of your application. In cases where the text contained in a view is the same color as the background, our Machine Learning algorithm is unable to detect if any text is present, so the Color Contrast rule does not run on this view.

Scans auf physischen Geräten mit iOS Analyzer 1.4.7 nicht möglich

Eine Konfigurationseinstellung im iOS Analyzer 1.4.7 verhindert das Ausführen von Scans, was die Meldung „Test fehlgeschlagen“ zurückgibt. Um Scans auf einem physischen Gerät auszuführen, aktualisieren Sie auf das neueste iOS Analyzer-Projekt.

Fehler im Analyzer-Projekt & Testen nach Bundle-ID in 2.8.1

Die Funktionalität beim Testen einer Anwendung nach Bundle-Identifier wurde in Version 2.8.1 unterbrochen, 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 auf das neueste im iOS Analyzer-Projekt.

„Could not Serialize AxeResult“-Fehler im Analyzer-Projekt v1.2.0 & SDK v2.12.3

Das Scannen einiger Anwendungen mit dieser Version des Analyzers und SDKs führt zu einem „Could not Serialize AxeResult“-Fehler. Aktualisieren Sie auf die neueste Version, um den Fehler zu beheben. Aktualisieren Sie auf das neueste iOS Analyzer-Projekt.Aktualisieren Sie auf das neueste iOS SDK.

False Positive: LabelInName und LabelAtFront in SwiftUI & plattformübergreifenden Apps

Einige Bildschirme können aufgrund einer fehlerhaften associatedText-Eigenschaft, die gefunden wird (#1622), False Positives mit LabelInName und LabelAtFront melden.

Supports Dynamic Type-Regel funktioniert nicht mit iOS 15 Pro Simulator

Es gibt ein Problem, das den iPhone 15 Pro-Simulator betrifft und verhindert, dass die Supports Dynamic Type-Regel ausgeführt wird. Wenn Sie für die Supports Dynamic Type-Regel angemeldet sind, können Sie sie nicht mit einem iPhone 15 Pro-Simulator testen. Ein Fehler wurde bei Apple gemeldet.

Regeln gegen verschachtelte Steuerungen

Bei der Betrachtung einer Verbesserung für unsere Regeln haben wir festgestellt, dass in XCTest verschachtelte Steuerungen nicht im Barrierefreiheitsbaum zurückgegeben werden. Ein Fehler wurde bei Apple gemeldet. (#1110)

ImageView Namensregel benötigt Überprüfung der Ergebnisse für UIKit Apps

In UIKit-Apps ist ein Bild ohne `accessibilityLabel` standardmäßig nicht mit unterstützender Technologie fokussierbar.
Die Eigenschaften, die wir von Apple verwenden, um die Fokussierbarkeit zu überprüfen, können ungenau sein, wenn ein `accessibilityIdentifier` für das Bild gesetzt ist. Aufgrund dieses unerwarteten Verhaltens werden Ergebnisse für ImageView-Namensprobleme in UIKit-Apps als Überprüfung erforderlich gemeldet. Ein Fehlerbericht wurde bei Apple eingereicht. (#1633)

False Positive: In Scroll View, Label In Name, Label at Front, und v2.11.0 Image View Name & ActiveControlName

Wir arbeiten aktiv an Korrekturen für die folgenden False Positives und werden diese Liste aktualisieren, sobald Korrekturen veröffentlicht werden.

In Scroll View
Kann Probleme für Text innerhalb von bannerartig verhaltenden Elementen melden. Um diese Elemente für Personen, die größere Texte benötigen, verfügbar zu machen, verwenden Sie UILargeContentViewer. (#622)

v2.11.0 Image View Name & Active Control Name
Wenn ein UIImageView ein gesetztes `accessibilityIdentifier` hat, aber nicht von VoiceOver fokussierbar ist und es fokussierbare Steuerelemente innerhalb davon gibt, kann ActiveControlName auf das UIImageView ein False Positive melden. Das Entfernen des `accessibilityIdentifier` löst das Problem. Ein Fehler wurde bei Apple gemeldet. (#1633)

Label In Name and Label At Front
Diese beiden Regeln suchen nach dem sichtbaren Label eines Steuerelements in der Nähe liegender Elemente, um den Regelstatus zu bestimmen. In einigen Ansichtenhierarchien kann der falsche nahegelegene Text erkannt werden, was dazu führt, dass diese Regeln fehlschlagen. (#1622)

Android

Farbkontrastregel läuft nicht, wenn Text- und Hintergrundfarben gleich sind

Unsere Farbkontrastregel hängt von maschinellem Lernen ab, um Text zu erkennen, was sicherstellt, dass der gescannte Text für Benutzer Ihrer Anwendung sichtbar ist. In Fällen, in denen der Text in einer Ansicht die gleiche Farbe wie der Hintergrund hat, ist unser maschineller Lernalgorithmus nicht in der Lage zu erkennen, ob Text vorhanden ist, sodass die Farbkontrastregel in dieser Ansicht nicht ausgeführt wird.

EditTextName auf Android 7 (SDK 24-25)

Apps, die mit XML geschrieben sind und die Hinweistexte verwenden, können falsche Positive mit der EditTextName Regel sehen. Hinweistext wurde erst mit Android 8 (SDK 26) eingeführt. Die Verwendung dieses Elements in Ihrer XML-App weist den Hinweistext dem Wert des Texteingabefelds zu. Neuere Android-Versionen sind besser gerüstet, um diese Erfahrung barrierefrei zu gestalten.

Um dieses Problem zu überwinden, lautet unsere erste Empfehlung, Ihre Tests auf neueren Versionen von Android auszuführen. Wenn es jedoch wichtig ist, dass die App auf früheren Android-Versionen barrierefrei ist, sollten Sie in Betracht ziehen, auf die Verwendung der hintText Funktion zu verzichten, da diese nicht offiziell unterstützt wird.

Android versteckte Ansichten geben Ergebnisse zurück

Möglicherweise sehen Sie Ergebnisse für Ansichten, die auf dem Bildschirm hinter anderen Ansichten verborgen sind. Diese verdeckten Ansichten stehen unterstützender Technologie nicht zur Verfügung, werden jedoch von Axe DevTools Mobile dennoch als Probleme gemeldet.

Wir arbeiten an einer Lösung für dieses komplexe Problem. In der Zwischenzeit, wenn TalkBack diese Ansichten nicht erreichen kann, können Sie die entsprechenden Probleme ignorieren. Diese erfordern keine Lösung, um Barrierefreiheit sicherzustellen.

Fehler beim Ausführen der ML Kit Texterkennung

Die ML Kit Texterkennung ist in vielen der Axe DevTools Mobile-Regeln erforderlich, um die Genauigkeit der Ergebnisse zu gewährleisten. Die ML Kit-Bibliothek sollte automatisch importiert werden, wenn auf Axe DevTools Mobile in Ihren automatisierten Espresso- oder UIAutomator-Tests verwiesen wird. In einigen Fällen erfolgt der automatische Import jedoch nicht und Sie sehen folgenden Fehler im Logcat:

Axe DevTools Android: Error while running mlKit Text Detection: MlKitContext has not been initialized.

Um dieses Problem zu überwinden, sollten Sie die ML Kit-Bibliothek manuell in Ihr Projekt importieren. In der build.gradle -Datei Ihrer Anwendung fügen Sie unter Abhängigkeiten Folgendes hinzu:

implementation 'com.google.mlkit:text-recognition:16.0.1'

Touch-Target-Abstand und Jetpack Compose

Die Touch-Target-Spacing-Regel läuft derzeit nicht auf irgendeinem Schieberegler, der in Jetpack Compose geschrieben wurde. Es können derzeit keine Maßnahmen ergriffen werden. Eine Lösung kommt jedoch bald!

Fehler beim lokalen Speichern von Ergebnissen auf API 30

Auf Android API 30 gibt es einen Berechtigungsfehler an einem der Orte, an denen wir versuchen, Ergebnisse lokal zu speichern. Das Ergebnis wird trotz der Anzeige dieses Fehlers weiterhin als JSON-Datei gespeichert. Der Fehler kann unterdrückt werden, indem Sie den Code im folgenden Block auskommentieren:

def clearDirectoryTask = task('clearDirectoryTask', type: Exec, group: 'reporting') {
    executable "${android.getAdbExecutable().toString()}"
    args 'shell', 'rm', '-r', '/storage/emulated/0/Documents/AxeTestCases'
//    finalizedBy {
//        fetchAndroidFolderAxeReportsTask
//    }
}

Please note that this code should only be commented out for API 30 as it will cause problems when saving locally for other API levels.

Schoroldetektion in Hybrid-Apps und plattformübergreifenden Apps

In einigen Hybrid- und plattformübergreifenden Apps können wir unerwartete Ergebnisse zurückgeben, wenn Elemente in einer Scrollansicht teilweise vom Bildschirm aus sind. Um ein Element auf Barrierefreiheit zu testen, stellen Sie sicher, dass es vollständig auf dem Bildschirm ist, bevor Sie den Scan durchführen.

Analyzer-App: Schwimmende Aktionsschaltfläche verschwindet

Mit API 31 (Android 12) wurde die Fähigkeit eingeführt, nicht-systemische Overlays auszublenden. Um die Axe Analyzer-App nutzen zu können, stellen Sie bitte sicher, dass diese Einstellung nicht aktiviert ist. Wenn Sie sich entschieden haben, diese Funktion aufgrund ihrer Sicherheitsvorteile zu nutzen, empfehlen wir, sie für interne Testversionen ausgeschaltet zu lassen, in denen Sie sicher mit Testdaten arbeiten können, um die Sicherheitsbedenken auf diese Weise auszuschließen. Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.

Um die Axe Accessibility Analyzer-App zu nutzen, aktualisieren Sie alle Aufrufe der Methode setHideOverlayWindows(true) zu setHideOverlayWindows(false) auf den betroffenen Aktivitätsfenstern.

Screenshot fehlt (schwarzer Kasten) im Dashboard

Um den vollen Funktionsumfang von Axe DevTools für Mobile freizuschalten, stellen Sie sicher, dass Screenshots aktiviert sind. Wir empfehlen, Screenshots auf einer Debug- oder Testversion Ihrer App zu aktivieren, die Mock-Daten verwendet, um Sicherheitsbedenken zu vermeiden. Lesen Sie unseren Leitfaden zum Aktivieren von Screenshots in Android-Apps.

Absturz, wenn `minifiedEnabled` auf true gesetzt ist

Wenn Sie Ihren Build minifizieren, werden Sie einen Absturz mit einer Fehlermeldung sehen, die anzeigt, dass ein Adapter beim Versuch, sich bei der Axe DevTools-Bibliothek anzumelden, nicht gefunden werden konnte. Deaktivieren Sie die Minifizierung für Ihre Debug-Builds mit implementierten Axe DevTools. (#729)

Builds mit aktiviertem r8 führen zu einem Fehler

Ein Build mit aktiviertem r8 kann versuchen, die Bibliothek axeDevTools zu minimieren, was zu einem Fehler führen kann, ähnlich wie:

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()?

Die Compose-APIs sind veraltet, bitte verwenden Sie die layout-agnostischen APIs , um weiterhin Updates zu erhalten. Wenn Sie die Compose-APIs weiterhin verwenden und auf einen Fehler stoßen wie `Erwartet genau '1' Knoten, aber es wurden '2' Knoten gefunden, die folgende Bedingung erfüllen: (isRoot)` oder `Kein View initialisiert, haben Sie AxeDevToolsCompose.setComposeTestRule() aufgerufen?`, lesen Sie bitte Compose setTestTag API.

Log-Nachricht:MlKitContext has not been initialized

Wenn Sie diese Nachricht erhalten, könnten einige Regel-Ergebnisse nicht wie erwartet zurückgegeben werden, wenn diese Regel künstliche Intelligenz nutzt. Betroffene Regeln sind Farbkontrast, Fokusierbarer Text und Verschachtelter Element-Name. (#841)

MAUI: Regel für Edit Text Name

Aufgrund von Einschränkungen der MAUI-App-Architektur im Android-Ökosystem wird die Regel für Edit Text Name im Dashboard als „Überprüfung erforderlich“ angezeigt, wenn ein Fehler für SDK-Version 5.5.0 und höher vermutet wird. Bitte bestätigen Sie in diesem Fall das korrekte Verhalten manuell.

Native Android: Benutzerdefinierte Dialoge / Modale

Wenn Sie benutzerdefinierte Dialoge oder Modale implementieren, die nicht die nativen Steuerelemente erweitern, können Sie Ergebnisse für Ansichten hinter dem Modal erhalten. In diesem Fall empfehlen wir, unser Tool nicht gegen diese benutzerdefinierten Modale oder Dialoge zu laufen, sondern sie manuell zu überprüfen, um sicherzustellen, dass sie mit unterstützender Technologie wie gewünscht funktionieren.

Web-Dashboard

Fehlender Screenshot

Wenn der Screenshot auf der Seite mit den Scandetails fehlt, könnte Ihre App verhindern, dass Screenshots aufgenommen werden. Oft geschieht dies aus Sicherheitsgründen in Ihrer Produktionsanwendung. Erwägen Sie, diese Anforderung für Ihren Testaufbau zu entfernen, um die volle Funktionalität im Axe DevTools Mobile Dashboard zu ermöglichen.

Einige Android-Scan-Namen sind unformatiert

Einige Android-Scan-Namen, die standardmäßig dem Bildschirmtitel zugeordnet sind, erscheinen als vollständiger Klassenname einschließlich des Paketbezeichners. In einer zukünftigen Version wird dies behoben, sodass der Bildschirmtitel in einen besser lesbaren Namen formatiert wird. Als Workaround können Sie den Scan-Namen vom Dashboard oder von den Frameworks aus festlegen. (#1643)