Axe DevTools Mobile release-opmerkingen van 30 augustus 2023
30 augustus 2023
Componentversies
- axeDevToolsXCUI v2.7.0
- axe-devtools-android v4.1.0
- Axe DevTools Reporter CLI v4.7.0
Wat is nieuw?
WCAG 2.2 bevindt zich momenteel in de status Voorstel Aanbeveling. Resultaten van de WCAG 2.2-regel „Afstand tussen aanraakdoelen“ zullen als Experimenteel worden gemarkeerd totdat WCAG 2.2 de status Aanbeveling bereikt. Dit betekent dat de resultaten van deze regel nu verschijnen in uw resultaten voor Fout, Goed, en Moet Beoordeeld Worden onder de kop Experimenteel. (Deze regel verscheen eerder in de genegeerde telling.) U kunt experimentele regels ook uitschakelen, indien gewenst. Meer informatie over experimentele regels.
Android
- U kunt nu regels negeren in uw geautomatiseerde UI-tests (Espresso of UI Automator) met behulp van de View ID Resource Name. Gebruik dit om regels te negeren bij het doorgeven in het Instrumentation Registry.
iOS
- De Inaccessible Action regel is nu onderdeel van het Axe DevTools XCUI-framework.
Reporter CLI
- U kunt nu rapporten opslaan in CSV en JUnit XML naast HTML. Meer informatie over de Axe DevTools Reporter CLI.
Bugfixes
iOS
- Verbeterde nauwkeurigheid van resultaten wanneer besturingselementen zijn uitgeschakeld.
- De regel „Kleurcontrast“ is bijgewerkt om ervoor te zorgen dat deze niet wordt uitgevoerd op gedimde weergaven achter een modal.
- Oproepen voor het bijwerken van de scannaam en tag zijn gecombineerd tot één netwerkverzoek om de prestaties te verbeteren.
Android
- UI Automator-tests wachten nu tot de vensterupdate is voltooid voordat er wordt gescand om te voorkomen dat een verouderde schermafbeelding wordt vastgelegd.
- Een vals-positief in de „Edit Text Name“-regel voor Compose is opgelost. Deze regel zal nu geen fout meer melden wanneer een Compose TextField een label bevat.
- De regel „Edit Text Value“ is hersteld om op alle Compose TextField-elementen te worden uitgevoerd.
- Een berekeningsprobleem met de regel „Touch Target Spacing“ is opgelost.
Dashboard
- Een probleem uit de vorige release is verholpen dat ervoor zorgde dat de volgorde van problemen binnen scans veranderde.
Updates
Herinnering: Vanaf 16 augustus 2023 zijn we gestopt met het uitbrengen van updates naar het UIKit-framework voor geautomatiseerd testen van iOS-apps. We zullen dit framework nog steeds aanbieden voor de nabije toekomst, maar geen bugfixes of updates meer uitvoeren. We raden aan over te schakelen naar het XCUI-framework dat in de toekomst zal worden bijgewerkt met nieuwe regels en verbeteringen. Als u momenteel het UIKit-framework gebruikt voor geautomatiseerde unit- of UI-tests en ondersteuning wilt bij de overgang naar het XCUI-framework, laat het ons weten. Dien een verzoek in bij support.deque.com, of mail naar helpdesk@deque.com.
Bekende problemen
Als u een van de onderstaande problemen ondervindt, neem dan contact met ons op via helpdesk@deque.com of support.deque.com. We zullen u dan kunnen informeren zodra het is opgelost of van een geïdentificeerde oplossing als er geen wordt vermeld.
- Axe DevTools Mobile geautomatiseerde tests worden uitgevoerd op native iOS-, native Android- en React Native-apps. Neem contact op met uw Deque-vertegenwoordiger voor oplossingen voor toegankelijkheidstesten voor uw technologie-stack.
- Om u te ondersteunen bij het verkrijgen van nauwkeurige resultaten en toepasbaar advies over herstel, draaien de Axe DevTools Mobile-regels niet in webweergaven of gerenderde PDF's. Om HTML-inhoud te testen, gebruik alstublieft Axe DevTools voor Web. Axe Monitor ondersteunt het scannen van PDF's op toegankelijkheid.
Axe DevTools Mobile voor iOS
axeDevToolsUIKit.xcframework
Weergaven gebouwd met SwiftUI kunnen niet worden getest met dit framework voor geautomatiseerd testen.
Gebruik het axeDevToolsXCUI-framework in UITesting voor SwiftUI-weergaven.
Ondersteuning voor aangepaste regels is alleen beschikbaar in Swift
De API voor aangepaste regels is niet toegankelijk voor Objective-C.
Valse positieven: InScrollView, SupportsDynamicType, Botsende weergaven
We werken actief aan oplossingen voor de volgende valse positieven en zullen deze lijst bijwerken zodra er verbeteringen beschikbaar zijn.
InScrollView
InScrollView kan problemen melden voor tekst binnen element dat zich als een banner gedraagt. Om deze elementen toegankelijk te maken voor mensen die grotere tekst nodig hebben, gebruik UILargeContentViewer.
SupportsDynamicType
U kunt valse positieven zien in de volgende scenario's:
- Als u de
UIContentSizeCategoryDidChangenotificatie gebruikt, kan het framework onterecht melden dat tekst niet reageert op Dynamisch Type in UITests. - Als u gebruikmaakt van
NotificationCenter.default.addObserver(forName:.., object:.., queue:.., using:..)om te reageren op deUIContentSizeCategoryDidChangenotificatie. - Als u gebruikmaakt van
traitCollectionDidChangeop de bovenliggende weergave of weergavecontroller van de tekst om te reageren op Dynamisch Type.
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
SwiftUI Picker en UIKit Picker
Pickerweergaven in SwiftUI en UIKit kunnen ervoor zorgen dat het framework vastloopt op simulators of apparaten. (#636)
Regels tegen geneste controles
Bij het verbeteren van onze regels ontdekten we dat in XCTest geneste controles niet worden weergegeven in de toegankelijkheidsboom. Er is een bug ingediend bij Apple. (#1110)
Valse positieven: In Scroll View, ActiveControlName
We werken actief aan oplossingen voor de volgende valse positieven en zullen deze lijst bijwerken zodra er verbeteringen beschikbaar zijn.
In Scroll View
Kan problemen melden voor tekst binnen elementen die zich als banneren gedragen. Om deze elementen toegankelijk te maken voor mensen die grotere tekst nodig hebben, gebruik UILargeContentViewer. (#622)
ActiveControlName
Als een UIImageView een `accessibilityIdentifier` heeft ingesteld maar niet focusbaar is door VoiceOver, en er zich focusbare controles binnen bevinden, kan ActiveControlName een vals positief melden op de UIImageView. Het verwijderen van de `accessibilityIdentifier` lost het probleem op. (#1178)
Valse negatieven: Beeldweergave Naam, Focusbare tekst in iOS 13 tot en met iOS 14.8.1
We werken actief aan oplossingen voor de volgende valse negatieven en zullen deze lijst bijwerken zodra er verbeteringen beschikbaar zijn.
Image View Name
Als een UIImageView een `accessibilityIdentifier` heeft ingesteld maar niet focusbaar is door VoiceOver, kan ImageViewName een vals negatief melden op de UIImageView. Het verwijderen van de `accessibilityIdentifier` lost het probleem op. (#1188)
Focusable Text
Elementen die zijn gemarkeerd als niet-toegankelijkheidselementen kunnen onjuiste resultaten melden vanwege een bug in het framework van Apple.
Axe DevTools Mobile voor Android
Crash bij gebruik van Proguard
Als uw debug- of testbuild Proguard gebruikt, volg dan de stappen om Deque te negeren in uw Proguard-instellingen.
Crash wanneer `minifiedEnabled` is ingesteld op true
Als u uw build minimaliseert, zult u een crash ervaren met een foutlogboek dat rapporteert dat een adapter niet kon worden gevonden bij het proberen in te loggen bij de Axe DevTools-bibliotheek. Schakel minimalisatie uit voor uw debug-builds met geïmplementeerde Axe DevTools. (#729)
Fouten bij compileren met Java8 Project en Axe DevTools Android 3.1.0
Probeer de volgende imports:
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" />
Builds met ingeschakelde r8 geven een foutmelding
Een build met ingeschakelde r8 kan proberen de axeDevTools-bibliotheek te minimaliseren, resulterend in een foutmelding zoals:
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.** { *; }
Foutmelding zoals:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
Als u een fout tegenkomt die lijkt op `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)`, neem dan contact met ons op via helpdesk@deque.com of support.deque.com voor assistentie. Onder bepaalde omstandigheden kunnen er twee Compose-rootnodes tegelijkertijd bestaan.
Axe DevTools Mobile Dashboard
Sommige Android-scan namen zijn niet opgemaakt
Sommige Android-scan namen die standaard op de schermtitel zijn ingesteld, zullen verschijnen als de volledige classnaam inclusief de bundelidentifier. In een toekomstige release zal dit worden opgelost zodat de schermtitel wordt opgemaakt in een beter leesbare naam. Als tijdelijke oplossing kunt u de scan naam instellen vanuit het dashboard of frameworks. (#1643)
