Axe DevTools Mobile Versionshinweise vom 27. März 2024
27. März 2024
Komponentenversionen
- axe-devtools-android v5.3.0
- axeDevToolsMobile Appium Plugin v2.0.0
Was ist neu?
Appium
- Breaking Change - Basierend auf Kundenfeedback haben wir die folgenden Änderungen vorgenommen, um unser Appium-Plugin benutzerfreundlicher zu gestalten.
- Wir verlangen nicht mehr, dass Sie die
page source-Methode des Appium-Treibers verwenden, um einen Barrierefreiheitsscan zu starten. Stattdessen nutzen Sie jetzt dieexecute script-Funktionalität des Treibers. Das bedeutet, dass Sie die Freiheit haben, diepage source-Methode für andere Zwecke in Ihren Appium-Tests zu verwenden. Bitte beachten Sie: Wenn Sie unser Skript ausführen, holen wir den Quelltext der Seite automatisch ab. Wenn Sie den Quelltext der Seite bereits während Ihres Tests abgerufen haben, übergeben Sie diesen beim Ausführen unseres Skripts, um ihn nicht doppelt abzurufen. - Sie müssen keine Fähigkeit mehr für die
keyfestlegen. Stattdessen übergeben Sie Ihren API-Schlüssel an unser Skript. - Siehe die Migrationsanleitung für das Update von v1.0.0 auf v2.0.0.
- Erste Schritte? Siehe die Appium-Dokumentation für Einrichtungshinweise und Beispiele.
- Wir verlangen nicht mehr, dass Sie die
Fehlerbehebungen
Android
- Ein Problem wurde behoben, bei dem das Speichern von Ergebnissen lokal aus automatisierten Tests mit Gradle Version 8 oder höher nicht funktionierte.
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 benachrichtigen, sobald es behoben ist oder sobald ein identifizierter Workaround vorliegt, falls keiner aufgeführt ist.
- Axe DevTools Mobile führt automatisierte Tests auf nativen iOS-, nativen Android- und React Native-Anwendungen durch. Bitte kontaktieren Sie Ihren Deque-Vertreter für Barrierefreiheitstests auf Ihrem Technologiestapel.
- Während Sie möglicherweise einige Ergebnisse von Web-Ansichten oder gerenderten PDFs erhalten, empfehlen wir dringend Tests mit Axe DevTools für Web oder Axe Monitor für die umfassendsten Barrierefreiheitstests für das Web.
Axe DevTools Mobile für iOS
Fehler im Analyzer-Projekt & Testen nach Bundle-ID in 2.8.1
Die Funktionalität, eine Anwendung anhand der Bundle-ID zu testen, war in Version 2.8.1 gestört, was zu einem Fehler mit dem Titel „Kein Zielanwendungspfad per Testkonfiguration angegeben: ...“ führte. Aktualisieren Sie auf 2.8.2 oder die neueste Version, um den Fehler zu beheben. Aktualisieren Sie auf die neueste Version innerhalb des iOS Analyzer-Projekts.
Ergebnisse auf nicht sichtbare Ansichten in SwiftUI-Apps, die in iOS 17 getestet werden
Mit der Version 2.8.0 (Releasenotes anzeigen)werden Ergebnisse nicht mehr auf Ansichten gemeldet, die nicht sichtbar sind, einschließlich außerhalb des Bildschirms oder von einer anderen Ansicht verdeckt. In SwiftUI-Anwendungen, die in iOS 17 getestet werden, zeigen einige Ergebnisse jedoch immer noch. (#1383)
Supports Dynamic Type-Regel funktioniert nicht mit dem iOS 15 Pro-Simulator
Es gibt ein Problem, das den iPhone 15 Pro-Simulator betrifft und das verhindert, dass die Supports Dynamic Type-Regel ausgeführt wird. Wenn Sie sich für die Supports Dynamic Type-Regel entschieden haben, können Sie diese nicht mit einem iPhone 15 Pro-Simulator testen. Ein Fehler wurde bei Apple gemeldet.
Regeln gegen Verschachtelte Steuerelemente
Bei einer Verbesserung unserer Regeln haben wir festgestellt, dass in XCTest verschachtelte Steuerelemente nicht im Barrierefreiheitsbaum ausgegeben werden. Ein Fehler wurde bei Apple gemeldet. (#1110)
Falsch positiv: Im Scroll View, ActiveControlName
Wir arbeiten aktiv an Korrekturen für die folgenden falsch positiven Meldungen und werden diese Liste aktualisieren, sobald Korrekturen veröffentlicht werden.
In Scroll View
Möglicherweise werden Probleme für Text in bannerverhaltenden Elementen gemeldet. Um diese Elemente Benutzern zugänglich zu machen, die größere Texte benötigen, verwenden Sie UILargeContentViewer. (#622)
ActiveControlName
Wenn ein UIImageView ein `accessibilityIdentifier` hat, aber nicht von VoiceOver fokussiert werden kann und fokussierbare Steuerelemente in sich verschachtelt sind, meldet ActiveControlName möglicherweise ein falsch positives Ergebnis auf dem UIImageView. Das Entfernen des `accessibilityIdentifier` behebt das Problem. Ein Fehler wurde bei Apple gemeldet. (#1226)
Falsch negativ: Bildansicht-Name, Fokussierbarer Text in iOS 13 bis iOS 14.8.1
Wir arbeiten aktiv an Korrekturen für die folgenden falsch negativen Meldungen und werden diese Liste aktualisieren, sobald Korrekturen veröffentlicht werden.
Image View Name
Wenn ein UIImageView ein `accessibilityIdentifier` hat, aber nicht von VoiceOver fokussiert werden kann, meldet ImageViewName möglicherweise ein falsch negatives Ergebnis auf dem UIImageView. Das Entfernen des `accessibilityIdentifier` behebt das Problem. Ein Fehler wurde bei Apple gemeldet. (#1226)
Focusable Text
Elemente, die als nicht zugänglich markiert sind, können aufgrund eines Fehlers im Apple-Framework falsche 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, um Deque in Ihren Proguard-Einstellungen zu ignorieren.
Absturz, wenn `minifiedEnabled` auf true gesetzt ist
Wenn Sie Ihr Build minimieren, treten Abstürze mit einem Fehlerprotokoll auf, das meldet, dass ein Adapter beim Versuch, sich bei der Axe DevTools-Bibliothek anzumelden, nicht gefunden werden konnte. Deaktivieren Sie Minify 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 axeDevTools-Bibliothek zu minimieren, was zu einem Fehler führt, der ähnlich aussieht 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()?
Wenn Sie auf einen Fehler stoßen, der in etwa so lautet: `Erwartet genau '1' Knoten, aber '2' Knoten gefunden, die übereinstimmen: (isRoot)` oder `Keine Ansicht initialisiert, haben Sie AxeDevToolsCompose.setComposeTestRule() aufgerufen?`, lesen Sie bitte Compose setTestTag API.
Axe DevTools Mobile Dashboard
Fehlender Screenshot
Wenn der Screenshot auf der Scan-Detailseite fehlt, kann es sein, dass Ihre App Screenshots verhindert. Oft geschieht dies aus Sicherheitsgründen in Ihrer Produktionsanwendung. Erwägen Sie, diese Anforderung in Ihrem 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 dem Bildschirmtitel entsprechen, erscheinen als voller Klassenname inklusive des Bundle-Identifier. In einer zukünftigen Version wird dies behoben, sodass der Bildschirmtitel in einen besser lesbaren Namen formatiert wird. Als Lösung können Sie den Scannamen vom Dashboard oder über Frameworks festlegen. (#1643)
Axe DevTools Mobile für Appium
Falsch positiv: Aktueller Ansichtsname
Aufgrund von Einschränkungen der über die Appium-Plattform verfügbaren Informationen haben wir ein falsch positives Ergebnis für den Aktuellen Ansichtsname identifiziert, wenn Sie die labeledBy -Eigenschaft verwenden, um ein Label für ein Schaltflächenelement bereitzustellen. Wir erkunden Lösungen und erwarten eine Korrektur in einer zukünftigen Version.
React Native & .NET MAUI: Label Im Namen & Label Vorne
Aufgrund von Einschränkungen der über die Appium-Plattform verfügbaren Informationen haben wir festgestellt, dass die Label Im Namen & Label Vorne-Regeln nicht für Apps, die mit React Native erstellt wurden, ausgeführt werden können. Wir erkunden Lösungen und erwarten eine Korrektur in einer zukünftigen Version.
React Native: Inspektions-Ansichtshierarchie zeigt vergangenen Bildschirm
Manchmal benötigt die Appium Seiteneigenschaft mehr Zeit, um zwischen Scans aktualisiert zu werden. Wenn das passiert, sehen Sie die Ansichtshierarchie eines vorherigen Bildschirms, wenn Sie die Inspektionsfunktion auf dem Dashboard verwenden. Um dies zu beheben, fügen Sie eine kleine Verzögerung ein, bevor Sie die Seiteneigenschafts-API aufrufen, um den Barrierefreiheitsscan zu initiieren. Beispiel:
await driver.pause(1000);
const result = await driver.getPageSource();
