axe DevTools Mobile Releaseopmerkingen 14 augustus 2024
14 augustus 2024
Componentversies
- 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)
Hoe te updaten: iOS SDK, iOS Analyzer, Android SDK, Android Analyzer
Wat is er nieuw?
Dashboard
Verbeterde Scan- en Probleemdetailpagina's
We hebben de scan- en probleemdetailpagina's in het axe DevTools Mobile Dashboard bijgewerkt om ze gebruiksvriendelijker te maken en de basis te leggen voor toekomstige verbeteringen. Hoewel de pagina's er anders uitzien, is de belangrijke functionaliteit nog steeds beschikbaar. Heeft u feedback? Laat het ons weten door een e-mail te sturen naar mobile-feedback@deque.com
iOS
Regelengine ingebed in Analyzer-project
We hebben de afhankelijkheid van Swift Package Manager voor het ophalen van axeDevToolsXCUI in het iOS Analyzer Xcode-project verwijderd. De nieuwste versie van het XCUI-framework is nu ingebed in de Analyzer voor elke release. Deze wijziging maakt het eenvoudiger om het Analyzer-project bij te werken en ervoor te zorgen dat u over de nieuwste regelengine beschikt.
Oplossingen
Android
- Een probleem opgelost waarbij de Analyzer-app zou crashen wanneer het apparaat opnieuw wordt opgestart op Android API-niveau 34
- Verbeteringen om de nauwkeurigheid te verhogen en het aantal fout-positieven te verminderen voor de regels Kleurcontrast en Aandoelgrootte
- Gebruiksgegevens zijn nu beschikbaar in axe-rapporten
iOS
- Verbeterd hoe we detecteren of SwiftUI-weergaven zichtbaar zijn voor de gebruiker, wat het aantal fout-positieven zal verminderen en de nauwkeurigheid voor verschillende regels zal verbeteren
- Verbeteringen om de nauwkeurigheid te verhogen en het aantal fout-positieven te verminderen in de volgende regels: Onbereikbare Actie, Focusbare Tekst, Pagina Titel, Geneste Elementen Naam
Bekende problemen
Als u een van de onderstaande problemen ervaart, neem dan contact met ons op via helpdesk@deque.com of support.deque.com. We kunnen u dan op de hoogte brengen zodra het is opgelost of een geïdentificeerde oplossing als er geen is vermeld.
- axe DevTools Mobile geautomatiseerde tests draaien op native iOS, native Android en React Native applicaties. Neem contact op met uw Deque vertegenwoordiger voor oplossingen voor toegankelijkheidstests op uw technologie stack.
- Hoewel u enkele resultaten kunt krijgen van webvensters of gerenderde PDF's, raden we sterk aan om axe DevTools voor Web of axe Monitor te gebruiken voor de meest uitgebreide toegankelijkheidstests voor het web.
axe DevTools Mobile voor iOS
Fout in Analyzer-project & Testen op Bundle ID in 2.8.1
Functionaliteit voor het testen van een applicatie met bundel-ID was kapot in versie 2.8.1, wat resulteerde in een fout met de titel „Geen doelapplicatiepad gespecificeerd via testconfiguratie: ...“. Update naar 2.8.2 of de nieuwste versie om de fout op te lossen. Update naar de nieuwste versie binnen het iOS Analyzer-project.
Fout-positief: LabelInName en LabelAtFront in SwiftUI & Cross-Platform Apps
Sommige schermen kunnen fout-positieven rapporteren met LabelInName en LabelAtFront vanwege een onjuiste associatedText-property die wordt gevonden (#1622)
Regel Ondersteunt Dynamisch Type werkt niet met iOS 15 Pro simulator
Er is een probleem dat de iPhone 15 Pro-simulator beïnvloedt, waardoor de regel Ondersteunt Dynamisch Type niet kan worden uitgevoerd. Als u ingeschreven bent voor de regel Ondersteunt Dynamisch Type, kunt u deze niet testen met een iPhone 15 Pro-simulator. Er is een bug ingediend bij Apple.
Regels tegen Geneste Besturingselementen
Tijdens het bekijken van een verbetering voor onze regels, hebben we ontdekt dat in XCTest geneste besturingselementen niet worden geretourneerd in de toegankelijkheidsboom. Er is een bug ingediend bij Apple. (#1110)
ImageView Naamsregel Moet Resultaten Beoordelen voor UIKit Apps
In UIKit-apps is een afbeelding zonder een `accessibilityLabel` standaard niet focusbaar met ondersteunende technologie.
De eigenschappen die we gebruiken om focusbaarheid van Apple te controleren, kunnen onnauwkeurig zijn wanneer een `accessibilityIdentifier` is ingesteld op de afbeelding. Vanwege dit onverwachte gedrag zullen de resultaten voor ImageView Naam-problemen in UIKit-apps worden gerapporteerd als Beoordeling Nodig. Er is een bugrapport ingediend bij Apple. (#1633)
Vals Positief: In Scroll View, Label In Naam, Label aan Voorkant, en v2.11.0 Image View Naam & ActiveControlName
We werken actief aan oplossingen voor de volgende valse positieven en zullen deze lijst bijwerken als er oplossingen worden vrijgegeven.
In Scroll View
Mogelijk worden er problemen gemeld voor tekst binnen elementen die zich als banners gedragen. Om deze elementen beschikbaar te maken voor degenen die grotere tekst nodig hebben, gebruik UILargeContentViewer. (#622)
v2.11.0 Image View Name & ActiveControlName
Als een UIImageView een `accessibilityIdentifier` heeft ingesteld maar niet focusbaar is met VoiceOver, en het bevat focusbare besturingselementen erin, kan ActiveControlName een vals positief resultaat melden op de UIImageView. Het verwijderen van de `accessibilityIdentifier` lost het probleem op. Er is een bug ingediend bij Apple. (#1633)
Label In Name and Label At Front
Deze twee regels zoeken naar het zichtbare label van een besturingselement tussen naburige elementen om de status van de regel te bepalen. In sommige weergavehiërarchieën kan de verkeerde naburige tekst worden gedetecteerd, waardoor deze regels mislukken. (#1622)
axe DevTools Mobile voor Android
Screenshot wordt weergegeven als een zwart vak op het dashboard
Om de volledige functionaliteit van axe DevTools voor Mobile te ontgrendelen, zorg ervoor dat screenshots zijn ingeschakeld. We raden aan screenshots in te schakelen op een debug- of testversie van uw app die mock-gegevens gebruikt om veiligheidsproblemen te vermijden. Bekijk onze handleiding voor het inschakelen van screenshots in Android-apps.
Crash wanneer `minifiedEnabled` is ingesteld op true
Als u uw build vermindert, ziet u een crash met een foutlogboek dat meldt dat een adapter niet kon worden gevonden bij het proberen in te loggen in de axe DevTools-bibliotheek. Schakel het verkleinen uit voor uw debug-builds met axe DevTools geïmplementeerd. (#729)
Builds met r8 ingeschakeld veroorzaken een foutmelding
Een build met r8 ingeschakeld kan proberen de axeDevTools-bibliotheek te verkleinen, 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 vergelijkbaar met:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
of: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?
Als u een fout tegenkomt zoals `Verwachtte precies '1' knoop maar vond '2' knopen die voldoen aan: (isRoot)` of `Geen Weergave geïnitialiseerd, heeft u AxeDevToolsCompose.setComposeTestRule() aangeroepen?`, raadpleeg dan Compose setTestTag API.
Logbericht:MlKitContext has not been initialized
Als u dit bericht tegenkomt, kunnen sommige regelresultaten niet zoals verwacht retourneren wanneer die regel kunstmatige intelligentie gebruikt. Getroffen regels zijn onder andere Kleurcontrast, Focusbare Tekst en Genest Element Naam. (#841)
MAUI: Bewerk Tekstnaam-regel
Vanwege beperkingen van de MAUI-apparchitectuur in het Android-ecosysteem, zal de Bewerk Tekstnaam-regel worden weergegeven als Beoordeling Nodig op het dashboard wanneer vermoed wordt dat er iets mis is in SDK-versie 5.5.0 en hoger. Bevestig voor dit geval handmatig het juiste gedrag.
Native Android: Aangepaste Dialogen / Modals
Wanneer u aangepaste dialogen of modals implementeert die niet de native controles uitbreiden, kunt u resultaten krijgen voor weergaven achter de modal. In dit geval raden we aan onze tool niet tegen deze aangepaste modals of dialogen te draaien en in plaats daarvan ze handmatig te controleren om ervoor te zorgen dat ze werken met ondersteunende technologie zoals gewenst.
axe DevTools Mobile Dashboard
Ontbrekende Screenshot
Als de screenshot ontbreekt op de scandraadgegevenspagina, kan uw app voorkomen dat er screenshots worden gemaakt. Vaak is dit om veiligheidsredenen in uw productieapplicatie. Overweeg om deze vereiste te verwijderen voor uw testversie om de volledige functionaliteit in het axe DevTools Mobile Dashboard mogelijk te maken.
Sommige Android scan-namen zijn onopgemaakt
Sommige Android scan-namen die standaard de schermtitel gebruiken, zullen verschijnen als de volledige klassennaam inclusief de bundel-ID. In een toekomstige release zal dit worden opgelost zodat de schermtitel wordt opgemaakt tot een beter leesbare naam. Als tijdelijke oplossing kunt u de scan-naam instellen vanaf het dashboard of frameworks. (#1643)
axe DevTools Mobile voor Appium
Vals Positieven: Actieve Weergavenaam, Touch Target-afstand
We werken actief aan oplossingen voor de volgende valse positieven en zullen deze lijst bijwerken als er oplossingen worden vrijgegeven.
Active View Name
Vanwege beperkingen in informatie beschikbaar via het Appium-platform, hebben we een vals positief geïdentificeerd voor Actieve Weergavenaam bij gebruik van de labeledBy eigenschap om een label aan een knop-element te geven.
Touch Target Spacing on iOS platform for SwiftUI & React Native apps
Grotere besturingselementen kunnen Touch Target-afstand niet halen wanneer ze groter zijn dan de minimale vereiste van 24pt x 24pt. (#411)
Vals Negatief: Onbereikbare Actie op Android React Native
U kunt tegenstrijdige resultaten zien voor deze nieuwe regel wanneer u React Native-apps op het Android-platform scant. Sommige weergaven hebben een genest knop-element dat resulteert in een mislukking voor de bovenliggende knop, maar een slag in de kindknop. (#407)
React Native: Label In Naam & Label Aan Voorkant
Vanwege beperkingen in informatie beschikbaar via het Appium-platform, hebben we ontdekt dat de regels Label In Naam & Label Aan Voorkant niet kunnen worden uitgevoerd voor apps gebouwd met React Native. We verkennen oplossingen en verwachten een oplossing in een toekomstige release.
React Native & .NET MAUI: Inspecteer Weergavehiërarchie vertoont eerdere scherm
Soms heeft de Appium-pagina bron eigenschap extra tijd nodig om bijgewerkt te worden tussen scans. Als dit gebeurt, ziet u de weergavehiërarchie van een vorig scherm wanneer u de inspectiefunctie op het dashboard gebruikt. Om dit op te lossen, voegt u een kleine timeout toe voordat u de pagina bron API aanroept om de toegankelijkheidsscan te activeren. Voorbeeld:
await driver.pause(1000);
const result = await driver.getPageSource();
Beperking: Image View Naam voor Decoratieve Afbeeldingen in Android
Vanwege beperkingen in informatie beschikbaar via het Appium-platform, hebben we ontdekt dat de Image View Naam-regel niet nauwkeurig kan testen voor decoratieve afbeelding-succescriteria in Android. Resultaten voor afbeeldingen zonder een toegankelijke naam worden in het dashboard weergegeven als 'Beoordeling Nodig' voor verdere analyse.
