axe DevTools Mobile 2 juli 2025 release-opmerkingen

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

2 juli 2025

Not for use with personal data

Componentversies

iOS

  • iOS SDK (axeDevToolsXCUI v2.16.0)
  • iOS Analyzer (axe-devtools-mobile-analyzer v1.4.12)
  • iOS Appium Driver (axe-appium-xcuitest-driver v1.5.0)
    • (Afgeleid van XCUITest v9.2.3)

Hoe te updaten: iOS SDK, iOS Analyzer, iOS Appium Driver

Android

  • Android SDK (axe-devtools-android v7.0.0)
  • Android Analyzer (axe Accessibility Analyzer v2.0.0)
  • Android Appium Driver (axe-appium-uiautomator2-driver v1.4.2)
    • (Afgeleid van UiAutomator2 v4.2.4)

Hoe te updaten: Android SDK, Android Analyzer, Android Appium Driver

Wat is nieuw?

Scan Groep URL's

Je kunt nu een URL maken voor een groep van maximaal 20 scanresultaten, met zowel onze Android als iOS SDK's. Maak een URL voor een enkele scan of een groep scans met onze Appium drivers.
Bezoek de volgende pagina's voor details over de implementatie van deze functie:

Oplossingen

iOS

  • Gestroomlijnde netwerkverzoeken voor het verzenden van scans met een scannaam en/of tags
  • Verbeteringen in de nauwkeurigheid van de volgende regels: Geassocieerde Tekst, Kleurcontrast, Label In Naam, Label Voorop

Breaking Changes

Android XML en Compose API's verwijderd

We zijn overgestapt naar een gestroomlijnde implementatie van axe DevTools voor Android, wat heeft geresulteerd in het afschaffen van de XML en Compose API's. We gaven aan dat deze wijziging in de release-opmerkingen van oktober 2024. Als je dat nog niet gedaan hebt, moet je team overstappen op de lay-out agnostische API's voor voortdurende ondersteuning en toegang tot de nieuwste updates.

Android API-niveausteun

We hebben ondersteuning toegevoegd voor Android API-niveau 36 voor de SDK. Het minimaal ondersteunde Android API-niveau is nu 26 voor zowel de SDK als de Mobile Analyzer-app.

Voor vragen of opmerkingen over deze breaking changes, neem contact op met support.deque.com.

Bekende Problemen

Als je een van de onderstaande problemen ervaart, 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 over een geïdentificeerde workaround als er geen wordt vermeld.

important
  • axe DevTools Mobile geautomatiseerd testen werkt op native iOS-, native Android- en React Native-applicaties. Neem contact op met uw Deque-vertegenwoordiger voor oplossingen voor toegankelijkheidstesten op uw technologie stack.
  • Hoewel u mogelijk enkele resultaten krijgt van webviews of gerenderde PDF's, raden we ten zeerste aan om te testen met axe DevTools voor Web of axe Monitor voor de meest uitgebreide toegankelijkheidstesten voor het web.

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.

Niet in staat om scans uit te voeren op fysieke apparaten met iOS Analyzer 1.4.7

Een configuratie-instelling in de iOS Analyzer 1.4.7 voorkomt dat scans worden uitgevoerd, met de melding "Test Mislukt". Om scans op een fysiek apparaat uit te voeren, update naar het nieuwste iOS Analyzer-project.

Fout in Analyzer Project & Testen op bundel-ID in 2.8.1

Functionaliteit met testen van een applicatie op bundel-ID was kapot in versie 2.8.1, wat resulteerde in een fout met de titel "Geen doeltoepad voor applicatie gespecificeerd via testconfiguratie: ...". Update naar 2.8.2 of de nieuwste versie om de fout op te lossen. Update naar het nieuwste binnen het iOS Analyzer-project.

Fout "Kon AxeResult niet serialiseren" in Analyzer Project v1.2.0 & SDK v2.12.3

Scanning van sommige applicaties met deze versie van de analyzer en SDK zou resulteren in een fout "Kon AxeResult niet serialiseren". 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 & Platformonafhankelijke Apps

Sommige schermen kunnen valse positieven rapporteren met LabelInName en LabelAtFront vanwege een onjuist gevonden associatedText-eigenschap (#1622)

Ondersteunt dynamische typeregel werkt niet met iOS 15 Pro simulator

Er is een probleem dat de iPhone 15 Pro simulator beïnvloedt, dat voorkomt dat de Ondersteunt dynamische typeregel wordt uitgevoerd. Als u bent ingeschreven voor de Ondersteunt dynamische typeregel, 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 ontdekten we dat in XCTest geneste besturingselementen niet worden geretourneerd in de toegankelijkheidsboom. Er is een bug ingediend bij Apple. (#1110)

ImageView Name-regel heeft controle nodig van resultaten 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 zijn mogelijk onnauwkeurig wanneer een `accessibilityIdentifier` is ingesteld op de afbeelding. Vanwege dit onverwachte gedrag zullen resultaten voor ImageView Name-problemen in UIKit-apps rapporteren als review nodig. Er is een bugrapport ingediend bij Apple. (#1633)

Vals positief: In Scroll View, Label In Name, Label at Front, en v2.11.0 Image View Name & 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 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 & Active Control Name
Als een UIImageView een `accessibilityIdentifier` heeft ingesteld, maar niet focusbaar is door VoiceOver, en het heeft focusbare besturingselementen binnenin genesteld, kan ActiveControlName een vals positief rapporteren 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 nabijgelegen elementen om de status van de regel te bepalen. In sommige weergavehiërarchieën kan de onjuiste nabijgelegen tekst worden gedetecteerd, waardoor deze regels falen. (#1622)

Android

Kleurcontrastregel wordt niet uitgevoerd wanneer tekst- en achtergrondkleuren hetzelfde zijn

Onze kleurcontrastregel is afhankelijk van machine learning om tekst te detecteren, wat ervoor zorgt dat de gescande tekst zichtbaar is voor gebruikers van uw applicatie. In gevallen waarin de tekst in een weergave dezelfde kleur heeft als de achtergrond, kan ons machine learning-algoritme niet detecteren of er tekst aanwezig is, waardoor de kleurcontrastregel niet wordt uitgevoerd op deze weergave.

EditTextName op Android 7 (SDK 24-25)

Apps geschreven met XML die de hinttekstfunctie gebruiken kunnen valse positieven zien met de EditTextName regel. Hinttekst werd pas geïntroduceerd in Android 8 (SDK 26). Het gebruik van dit element in uw XML-applicatie zal de hinttekst toewijzen aan de waarde van het tekstinvoerveld. Recentere versies van Android zijn beter uitgerust om deze ervaring toegankelijk te maken.

Om dit probleem te overwinnen is onze eerste aanbeveling om uw tests op nieuwere versies van Android uit te voeren. Als het belangrijk is dat de app toegankelijk is op oudere Android-versies, kunt u overwegen het gebruik van de hintText functie te vermijden, aangezien het niet officieel wordt ondersteund.

Android verborgen weergaven geven resultaten terug

U kunt resultaten zien voor weergaven die verborgen zijn achter andere weergaven op het scherm. Deze verborgen weergaven zijn niet toegankelijk voor ondersteunende technologie, maar axe DevTools Mobile rapporteert ze toch als problemen.

We werken aan een oplossing voor dit complexe probleem. In de tussentijd, als TalkBack deze weergaven niet kan bereiken, kunt u de bijbehorende problemen negeren. Ze hoeven niet te worden opgelost om toegankelijkheid te garanderen.

Fout bij het uitvoeren van ML Kit Tekstdetectie

ML Kit tekstdetectie is vereist in veel van de axe DevTools Mobile-regels om de nauwkeurigheid van resultaten te waarborgen. De ML Kit-bibliotheek zou automatisch moeten worden geïmporteerd bij het refereren aan axe DevTools Mobile in uw geautomatiseerde Espresso- of UIAutomator-tests. In sommige gevallen echter gebeurt de automatische import niet en ziet u de volgende fout in de logcat:

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

Om dit probleem op te lossen, moet u de ML Kit-bibliotheek handmatig in uw project importeren. In het build.gradle bestand van uw applicatie, voeg het volgende toe onder dependencies:

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

Aanraakdoelafstandsinstelling en Jetpack Compose

De Touch Target Spacing-regel draait momenteel niet op slidercomponenten die zijn geschreven in Jetpack Compose. Er kan op dit moment geen actie worden ondernomen. Een oplossing komt echter binnenkort!

Fout bij het lokaal opslaan van resultaten op API 30

Op Android API 30 heeft een van de locaties waar we proberen resultaten lokaal op te slaan een toestemmingfout. Het resultaat wordt desondanks als een JSON-bestand opgeslagen. De fout kan worden onderdrukt door de code in het volgende blok uit te schakelen:

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.

Scrolldetectie op hybride apps en cross-platform apps

In sommige hybride en cross-platform apps kunnen we onverwachte resultaten terugkrijgen wanneer items in een scrollview gedeeltelijk van het scherm zijn. Om een element te testen op toegankelijkheid, zorg ervoor dat het volledig op het scherm staat voordat u 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 beveiligingsverbeteringen, raden we aan om deze uit te laten voor interne testversies waarin je veilig testgegevens kunt gebruiken en beveiligingsproblemen zo 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 activiteitvensters.

Screenshot ontbreekt (zwarte doos) in het dashboard

Om de volledige functionaliteit van axe DevTools voor mobiel te ontgrendelen, zorg ervoor dat screenshots zijn ingeschakeld. We raden aan screenshots in te schakelen op een debug- of testversie van je app die gebruikmaakt van testgegevens om beveiligingsproblemen te voorkomen. Bekijk onze gids voor het inschakelen van screenshots in Android-apps.

Crash wanneer `minifiedEnabled` is ingesteld op true

Als je je build minimaliseert, krijg je een crash met een foutlogboek waarin wordt gemeld dat een adapter niet kan worden gevonden wanneer je probeert in te loggen bij de axe DevTools-bibliotheek. Schakel minimalisatie uit voor je debug-builds waarin axe DevTools is geïmplementeerd. (#729)

Builds met r8 ingeschakeld geven een fout

Een build met r8 ingeschakeld kan proberen de axeDevTools-bibliotheek te minimaliseren, wat resulteert in een fout 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-API's zijn verouderd, gebruik alstublieft de lay-out-agnostische API's om updates te blijven ontvangen. Als je de Compose-API's blijft gebruiken en een fout tegenkomt in de trant van `Er werd precies '1' knooppunt verwacht maar er zijn '2' knooppunten gevonden die voldoen aan: (isRoot)` of `Geen View geïnitialiseerd, heb je AxeDevToolsCompose.setComposeTestRule() genoemd?`, raadpleeg dan de Compose setTestTag API.

Logbericht:MlKitContext has not been initialized

Als je dit bericht tegenkomt, kunnen sommige regelresultaten mogelijk niet naar verwachting terugkeren wanneer die regel gebruikmaakt van kunstmatige intelligentie. Betrokken regels zijn onder andere Kleurcontrast, Focusbare Tekst en Genestelde Elementnaam. (#841)

MAUI: Bewerken tekstnaamregel

Door beperkingen van de MAUI-apparchitectuur in het Android-ecosysteem, zal de Bewerken tekstnaamregel als Beoordeling vereist worden weergegeven in het dashboard wanneer een mislukking wordt vermoed voor SDK-versie 5.5.0 en hoger. Bevestig in dit geval handmatig het juiste gedrag.

Native Android: Aangepaste dialogen/modals

Wanneer je aangepaste dialogen of modals implementeert die de native bedieningselementen niet uitbreiden, kun je resultaten krijgen voor weergaven achter de modal. In dit geval raden we aan onze tool niet tegen deze aangepaste modals of dialogen te laten lopen, maar ze in plaats daarvan handmatig te controleren om ervoor te zorgen dat ze naar wens functioneren met ondersteunende technologie.

Webdashboard

Ontbrekende Screenshot

Als de screenshot ontbreekt op de details-pagina van de scan, kan je app screenshots verhinderen. Dit gebeurt vaak om beveiligingsredenen in je productie-applicatie. Overweeg om deze vereiste te verwijderen voor je test-build zodat de volledige functionaliteit in het axe DevTools Mobile Dashboard beschikbaar is.

Sommige Android-scan namen zijn niet opgemaakt

Sommige Android-scan namen die standaard zijn ingesteld op de schermtitel, verschijnen als de volledige klassennaam inclusief de bundelidentifier. In een toekomstige release zal dit worden opgelost, zodat de schermtitel wordt opgemaakt tot een leesbare naam. Als tijdelijke oplossing kun je de scannaam instellen vanuit het dashboard of frameworks. (#1643)