axe DevTools Mobile 12 februari 2025 Release-opmerkingen
12 februari 2025
Componentversies
- Android SDK (axe-devtools-android v6.1.0)
- Android Analyzer (axe Accessibility Analyzer v1.11.0)
- Android Appium Driver (axe-appium-uiautomator2-driver v1.3.0)
- axe DevTools Reporter CLI v4.10.0
Hoe te updaten: Android SDK, Android Analyzer, Android Appium Driver, axe DevTools Reporter CLI
Wat is er nieuw?
Android Appium Driver
De functie 'Regels negeren' is nu beschikbaar voor de Android Appium-driver! Raadpleeg onze documentatie over het negeren van Android-regels terwijl u opmerkt dat voor de Appium Android-driver, negeren van regels alleen kan worden geïmplementeerd met alle weergaven, niet door geselecteerde weergaven of klasnaam. Voor meer informatie over het negeren van regels, zie onze documentatie over Appium-setup. Ondersteuning voor iOS Appium-driver komt binnenkort.
axe Reporter CLI
Nu, wanneer u een HTML-rapport genereert vanuit het JSON-bestand van de mobiele scan, kunt u de toegankelijkheidsscore zien naast het totale aantal problemen, de succesratio en de ernst van de problemen. U kunt een score zien voor alle scans of een enkele scan selecteren om de score daarvan te zien. Deze toevoeging sluit aan bij de toegankelijkheidsscore die u op het axe DevTools Mobile Dashboard ziet.
Ter referentie: de succesratio is het percentage van toegankelijkheidseisen dat met succes is gehaald van het totale aantal gecontroleerde vereisten. De toegankelijkheidsscore wordt berekend op basis van het totale aantal schermen, het aantal problemen en de ernst van die problemen.
Android-fixes
- Consequentere en betrouwbaardere resultaten in zowel native als cross-platform apps
- Toegankelijkheidsverbeteringen voor de Analyzer-app
- Updates om de prestaties en nauwkeurigheid voor alle toegankelijkheidsregels te verbeteren
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 kunnen u dan op de hoogte brengen zodra het is opgelost of van 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 technologische stack.
- Hoewel u enigszins resultaten kunt krijgen van webviews of gerenderde PDF's, raden we sterk aan om te testen met axe DevTools voor Web of axe Monitor voor de meest uitgebreide toegankelijkheidstests voor het web.
iOS
Fout in Analyzer Project & testen op bundel-ID in 2.8.1
Functionaliteit bij het testen van een applicatie via bundel-ID was kapot in versie 2.8.1, wat resulteerde in een fout met de titel „Geen doeltoepassing opgegeven via testconfiguratie: ...“. Update naar 2.8.2 of de nieuwste versie om de fout op te lossen. Update naar de nieuwste binnen het iOS Analyzer-project.
„Kon AxeResult niet serialiseren“ Fout in Analyzer Project v1.2.0 & SDK v2.12.3
Het scannen van sommige applicaties met deze versie van de analyzer en SDK zou resulteren in een „Could not Serialize AxeResult“ foutmelding. Update naar de nieuwste versie om de fout op te lossen. Update naar het nieuwste iOS Analyzer-project.Update naar de nieuwste iOS SDK.
Vals Positief: LabelInName en LabelAtFront in SwiftUI & Cross-Platform Apps
Sommige schermen kunnen valse positieven melden met LabelInName en LabelAtFront vanwege een incorrect gevonden associatedText-eigenschap (#1622)
Supports Dynamic Type-regel werkt niet met iOS 15 Pro-simulator
Er is een probleem dat de iPhone 15 Pro-simulator treft waardoor de Supports Dynamic Type-regel niet kan worden uitgevoerd. Als je bent ingeschreven voor de Supports Dynamic Type-regel, kun je deze niet testen met een iPhone 15 Pro-simulator. Er is een bug gemeld bij Apple.
Regels tegen Geneste Besturingselementen
Tijdens het bekijken van een verbetering voor onze regels, ontdekten we dat in XCTest geneste besturingselementen niet worden geretourneerd in de toegankelijkheidsboom. Een bug is gemeld bij Apple. (#1110)
ImageView Naamregel Heeft Herzieningsresultaten Nodig 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 resultaten voor ImageView Name-problemen in UIKit-apps als „Behoeft Herziening“ worden gerapporteerd. Een bugrapport is ingediend bij Apple. (#1633)
Vals Positief: In Scrollview, Label In Name, Label vooraan, en v2.11.0 Image View Naam & ActiveControlName
We werken actief aan oplossingen voor de volgende valse positieven en zullen deze lijst bijwerken zodra er oplossingen zijn uitgebracht.
In Scroll View
Kan problemen melden voor tekst binnen banier-achtige elementen. Om deze elementen beschikbaar te maken voor degenen die grotere tekst nodig hebben, gebruik UILargeContentViewer. (#622)
v2.11.0 Image View Name & Active Control Name
Als een UIImageView een `accessibilityIdentifier` heeft ingesteld, maar niet focusbaar is door VoiceOver, en het heeft focusbare besturingselementen erin genest, kan ActiveControlName een vals positief rapporteren op de UIImageView. Het verwijderen van de `accessibilityIdentifier` lost het probleem op. Een bug is gemeld bij Apple. (#1633)
Label In Name and Label At Front
Deze twee regels zoeken naar het zichtbare label van een besturingselement onder naburige elementen om de status van de regel te helpen bepalen. In sommige weergavehiërarchieën kan de verkeerde naburige tekst worden gedetecteerd, waardoor deze regels falen. (#1622)
Android
Touch Target Spacing en Jetpack Compose
De Touch Target Spacing-regel draait momenteel niet op schuifcomponenten die zijn geschreven in Jetpack Compose. Op dit moment kan er geen actie worden ondernomen. Er komt binnenkort een oplossing!
Fout bij het opslaan van resultaten lokaal op API 30
Op Android API 30 heeft een van de locaties waar we proberen resultaten lokaal op te slaan een permissiefout. Het resultaat wordt nog steeds opgeslagen als een JSON-bestand, ondanks dat deze fout wordt weergegeven. De fout kan worden onderdrukt door de code in het volgende blok te becommentariëren:
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.
Scroll-detectie op Hybride Apps en Cross-Platform Apps
In sommige hybride en cross-platform apps kunnen we onverwachte resultaten teruggeven wanneer items in een scrollview gedeeltelijk buiten beeld zijn. Om een element op toegankelijkheid te testen, zorg ervoor dat het volledig in beeld is voordat je de scan uitvoert.
Analyzer App: Zwevende Actieknop Verdwijnt
Met API 31 (Android 12) is de mogelijkheid geïntroduceerd om niet-systeemoverlays te verbergen. Om de axe Analyzer-app te gebruiken, zorg ervoor dat deze instelling niet is ingeschakeld. Als je ervoor hebt gekozen om deze functie te gebruiken vanwege de verbeteringen in de beveiliging, raden we aan om deze uit te laten voor interne testbuilds waar je op veilige wijze testgegevens kunt gebruiken en beveiligingsproblemen kunt elimineren. Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.
Om de axe Accessibility Analyzer-app te gebruiken, werk alle aanroepen naar de methode bij setHideOverlayWindows(true) naar setHideOverlayWindows(false) op de getroffen activiteitwindows.
Screenshot Ontbreekt (Zwart Vlak) in het Dashboard
Om de volledige functionaliteit van axe DevTools voor Mobiel te ontgrendelen, zorg ervoor dat screenshots zijn ingeschakeld. We raden aan om screenshots in te schakelen op een debug- of testversie van je app die mock-gegevens gebruikt om beveiligingsproblemen te vermijden. Bekijk onze handleiding voor het inschakelen van screenshots in Android-apps.
Crash wanneer `minifiedEnabled` is ingesteld op true
Als je je build minimaliseert, zie je een crash met een foutlogboek dat meldt dat een adapter niet kon worden gevonden bij het proberen in te loggen op de axe DevTools-bibliotheek. Schakel minify uit voor je debugbuilds met geïmplementeerde axe DevTools. (#729)
Builds met r8 ingeschakeld geven een fout
Een build met r8 ingeschakeld kan proberen om de axeDevTools-bibliotheek te minimaliseren, wat resulteert 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()?
De Compose APIs zijn verouderd, gebruik alstublieft de lay-out agnostische APIs om updates te blijven ontvangen. Als je de Compose APIs blijft gebruiken en een fout tegenkomt iets in de trant van `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)` of `No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?`, raadpleeg dan Compose setTestTag API.
Logbericht:MlKitContext has not been initialized
Als je dit bericht tegenkomt, kunnen sommige regelresultaten mogelijk niet zoals verwacht terugkeren wanneer die regel kunstmatige intelligentie gebruikt. Betroffen regels zijn onder andere Kleurcontrast, Focusbare Tekst en Geneste Element Naam. (#841)
MAUI: Bewerk Tekst Naamregel
Vanwege beperkingen van de MAUI-apparchitectuur binnen het Android-ecosysteem, zal de regel Bewerk Tekst Naam in het dashboard als „Behoeft Herziening“ worden weergegeven wanneer een fout wordt vermoed voor SDK-versie 5.5.0 en hoger. Bevestig in dit geval handmatig correct gedrag.
Native Android: Aangepaste Dialogen/Modalen
Wanneer je aangepaste dialogen of modalen implementeert die de native besturingselementen niet uitbreiden, kun je resultaten krijgen voor weergaven achter het modal. In dat geval raden we aan om onze tool niet te gebruiken tegen deze aangepaste modalen of dialogen en ze in plaats daarvan handmatig te controleren om ervoor te zorgen dat ze zich gedragen zoals gewenst met ondersteunende technologie.
Web Dashboard
Ontbrekende Screenshot
Als de screenshot ontbreekt op de scan-detailpagina, kan het zijn dat je app voorkomt dat er screenshots worden gemaakt. Vaak is dit om veiligheidsredenen in je productieapplicatie. Overweeg om deze vereiste te verwijderen voor je testbuild zodat de volledige functionaliteit in het axe DevTools Mobile Dashboard mogelijk is.
Sommige Android-scan namen zijn niet opgemaakt
Sommige Android-scan namen die standaard zijn ingesteld op de schermtitel, zullen verschijnen als de volledige classnaam inclusief de bundle-identifier. In een toekomstige release zal dit worden opgelost zodat de schermtitel wordt opgemaakt naar een beter leesbare naam. Als workaround kun je de scan-naam instellen vanuit het dashboard of frameworks. (#1643)
