Axe DevTools Mobile 2 juli 2026 Release Notes

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 2026

Not for use with personal data

Componentversies

Appium

iOS

  • iOS Appium 2 Driver (axe-appium2-xcuitest-driver v2.5.0)
    • (Afgeleid van XCUITest v9.10.4)
  • iOS Appium 3 Driver (axe-appium3-xcuitest-driver v1.4.0)
    • (Afgeleid van XCUITest v11.10.0)

Hoe te updaten: iOS Appium Driver

Android

  • Android Appium 2 Driver (axe-appium2-uiautomator2-driver v2.5.0)
    • (Afgeleid van UiAutomator2 v4.2.8)
  • Android Appium 3 Driver (axe-appium3-uiautomator2-driver v1.4.0)
    • (Afgeleid van UiAutomator2 v7.6.1)

Hoe te updaten: Android Appium Driver

Wat is er nieuw?

Geaggregeerde HTML-rapporten

Door mobile: generateHtmlReportAndSummary eenmaal per test toe te voegen, wordt er een zelfstandig HTML-rapport geproduceerd voor gerichte scans en wordt het van het apparaat naar een lokale directory overgebracht - axeHtmlReportPath. Vind implementatiedetails hier: Genereer een HTML-rapport en samenvatting.

Vervangingen en Verwijderingen

De axeServerUrl configuratie-eigenschap voor Auto Scan is vervangen, evenals de axeServiceUrl voor Gerichte Testen. axeAccountURL is opgezet om beide eigenschappen te vervangen.

Bekende problemen

Als u een van de onderstaande problemen ervaart, neem dan contact met ons op via helpdesk@deque.com of support.deque.com. Wij kunnen u dan op de hoogte stellen zodra het is opgelost of van een geïdentificeerde oplossing als deze niet vermeld is.

important
  • Axe DevTools Mobile voert geautomatiseerde tests uit op native iOS-, native Android- en React Native-toepassingen. Neem contact op met uw Deque-vertegenwoordiger voor toegankelijkheidstestoplossingen voor uw technologie.
  • Hoewel u enkele resultaten kunt krijgen van webweergaven of gerenderde PDF's, raden we ten zeerste aan gebruik te maken van axe DevTools voor Web of axe Monitor voor de meest uitgebreide toegankelijkheidstests voor het web.

iOS

Kleurcontrast kan worden uitgevoerd op alleen-icoon-elementen vanwege OCR

De kleurcontrastregel maakt gebruik van Apple's Vision-framework (Optical Character Recognition, of OCR) om tekst binnen de grenzen van een element te lezen. OCR kan af en toe kleine icoonachtige symbolen - zoals terug-pijl chevrons (<), bulletpoints, decoratieve symbolen - als tekst identificeren. Wanneer dat gebeurt, wordt de kleurcontrastregel uitgevoerd op een element dat geen leesbare tekst bevat, wat kan resulteren in een resultaat voor een alleen-icoon-knop. Omdat de OCR-uitvoer niet deterministisch is over scans heen, kan hetzelfde element in de resultaten van kleurcontrast verschijnen in één scan en als „NIET TOEPASBAAR“ worden gerapporteerd in de volgende. Dit is een bekende eigenschap van OCR, geen fout in de regel.

Om dit probleem te omzeilen, kunt u de ignore API's gebruiken om kleurcontrastresultaten voor de getroffen elementen te onderdrukken.



// Ignore Color Contrast for a specific element by accessibility identifier
axeDevTools?.configuration.ignore(rulesFor: [
    "backButton": [AxeRuleId.ColorContrast.toString()]
])

// Of negeer kleurcontrast wereldwijd axeDevTools?.configuration.ignore(rule: AxeRuleId.ColorContrast.toString())

Leer meer over regels negeren.

Valse positieve schermtitel in Flutter-apps

Flutter koppelt niet AppBar.title aan de native eigenschap van de schermtitel - UIViewController.title, wat ervoor zorgt dat de regel voor Schermtitel mislukt op alle Flutter-schermen, ongeacht of er een beschrijvende titel aanwezig is.

Dit is een bekende beperking van het Flutter-platform die wordt bijgehouden in flutter/flutter#185894.

Vals-positieven voor de Kleurencontrastregel bij achtergrondverloop op kleine schermen

Bij het uitvoeren van toegankelijkheidscontroles op kleinere schermformaten of met kleinere lettergroottes kan de regel voor Kleurencontrast vals-positieven rapporteren voor achtergrondverlopen. In dergelijke gevallen kan het zijn dat de voorgrondkleur niet kan worden bepaald en in plaats daarvan achtergrondkleuren met elkaar worden vergeleken, wat tot een mislukking leidt.

Om dit probleem te omzeilen, probeer toegankelijkheidscontroles uit te voeren op grotere apparaten. Als alternatief kunt u ervoor kiezen om de regel in uw tests te negeren en het Kleurencontrast handmatig voor deze weergaven te controleren.

Onnauwkeurige isVisible eigenschap van XCTest

De toegankelijkheids-API's van Apple kunnen webinhoud binnen WKWebView onjuist rapporteren als „isVisible”, zelfs wanneer de webweergave wordt bedekt door native overlays (zoals modale vensters, waarschuwingen of andere native UI-elementen). Dit gebeurt omdat het toegankelijkheidssysteem alleen controleert of de WKWebView-container zelf zichtbaar is, in plaats van of de webinhoud daadwerkelijk ongehinderd en waarneembaar is voor de gebruiker.

iOS 26 toegankelijkheidsfout met stappers

iOS 26 bevat een toegankelijkheidsfout waarbij standaardstapperschakelaars niet „gedimd” aankondigen via Assistive Technology om aan te geven dat ze niet zijn ingeschakeld. Als gevolg hiervan zien de iOS-regels deze knoppen ook als ingeschakeld, zelfs als ze dat niet zijn. Er is een bugrapport ingediend bij Apple, maar totdat dit is opgelost, kunnen de volgende regels resultaten rapporteren voor uitgeschakelde stapperschakelaars: AssociatedText, InaccessibleAction, en ColorContrast.

Totdat Apple deze bug oplost, zal de oplossing zijn om [de regels te negeren](ios-ignore-rule). De standaardstapperschakelaars hebben de identificaties „Decrement” en „Increment”, en kunnen indien nodig genegeerd worden door identificatie.

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.

Vals-positief: LabelInName en LabelAtFront in SwiftUI & Cross Platform Apps

Sommige schermen kunnen vals-positieven rapporteren met LabelInName en LabelAtFront als gevolg van een onjuiste gevonden associatedText-eigenschap (#1622)

Ondersteunt Dynamic Type-regel werkt niet met iOS 15 Pro-simulator

Er is een probleem dat de iPhone 15 Pro-simulator beïnvloedt, waardoor de regel voor Ondersteunt Dynamic Type niet kan worden uitgevoerd. Als u bent aangemeld voor de regel voor Ondersteunt Dynamic Type, kunt u deze niet testen met een iPhone 15 Pro-simulator. Er is een bugrapport ingediend bij Apple.

Regels tegen Geneste Besturingselementen

Terwijl we een verbetering voor onze regels onderzochten, ontdekten we dat in XCTest geneste besturingselementen niet worden geretourneerd in de toegankelijkheidsboom. Er is een bugrapport ingediend bij Apple. (#1110)

ImageView Naam Regel Heeft Beoordelingsresultaten Nodig voor UIKit Apps

In UIKit-apps is een afbeelding zonder een `accessibilityLabel` standaard niet focusbaar met assistieve technologie.
De eigenschappen die we gebruiken om focusbaarheid van Apple te controleren, kunnen onnauwkeurig zijn wanneer er een `accessibilityIdentifier` op de afbeelding is ingesteld. Vanwege dit onverwachte gedrag zullen resultaten voor ImageView Naam problemen in UIKit-apps als Heeft Beoordelingsresultaten Nodig rapporteren. Er is een bugrapport ingediend bij Apple. (#1633)

Vals-positief: In Scroll View, Label In Name, Label at Front, en v2.11.0 Afbeeldingsweergave Naam & ActiveControlName

We werken actief aan oplossingen voor de volgende vals-positieven en zullen deze lijst bijwerken zodra er oplossingen worden uitgebracht.

In Scroll View
Tekst binnen banners die zich gedragen als elementen kan worden gemarkeerd met een „Heeft Beoordelingsresultaat Nodig”-bericht. 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 genest erin, kan ActiveControlName een vals-positief rapporteren op de UIImageView. Het verwijderen van de `accessibilityIdentifier` lost het probleem op. Er is een bugrapport ingediend bij Apple. (#1633)

Label In Name and Label At Front
Deze twee regels zoeken naar een zichtbaar label van een controle tussen nabijgelegen elementen om de regelstatus te bepalen. In sommige weergavehiërarchieën kan de onjuiste nabijgelegen tekst worden gedetecteerd, wat ervoor zorgt dat deze regels mislukken. (#1622)

Android

Potentiële toegankelijkheidsproblemen voor Focusable Text

Bij het gebruik van decoratieve tekst in weergaven zoals „Contactpictogrammen” is het mogelijk om een toegankelijkheidsprobleem te introduceren. Als u een tekstweergave gebruikt om letters weer te geven in plaats van afbeeldingen te genereren met de gewenste letters als vectoren, en u vervolgens aangeeft dat die tekstweergave niet belangrijk is voor toegankelijkheid, kunnen we niet betrouwbaar vaststellen of u een toegankelijkheidsovertreding heeft gemaakt.

Als u focusbare tekst bewerkt om twee of minder tekens te negeren, kunt u onbedoeld veel knoppen met één woord in verschillende talen negeren (bijv. „OK”, „No”, „Sí”). Om deze problemen te vermijden, zou u de gewenste letters uit het woord dat u in het pictogram wilt weergeven, moeten halen en de letters als onderdeel van de afbeelding moeten genereren in plaats van als afzonderlijke tekstweergaven. `FocusableText` zal dan niet op die weergaven worden uitgevoerd.

Schermtitel vals-positief in Flutter-apps

Flutter koppelt niet AppBar.title aan de eigenschap voor de native schermtitel - Activity.setTitle, wat ervoor zorgt dat de regel voor Schermtitel mislukt op alle Flutter-schermen, ongeacht of er een beschrijvende titel aanwezig is.

Dit is een bekende beperking van het Flutter-platform die wordt bijgehouden in flutter/flutter#185894.

Aangekondigde tekstdetectie vals-positief

In sommige gevallen is ondersteunende technologie afhankelijk van AccessibilityEvent beschrijvingen van het Android-systeem om informatie aan de gebruiker aan te kondigen wanneer geen andere aankondiging beschikbaar is. Aangezien AccessibilityEvents worden geactiveerd door gebruikersacties, kunnen we niet de juiste beschrijving openen als deze informatie niet wordt verstrekt.

Om dit probleem te vermijden, zorg ervoor dat alle relevante weergaven als belangrijk voor toegankelijkheid zijn gemarkeerd. Dit stelt Talkback in staat om de informatie van de weergave te openen, die onze tool vervolgens kan detecteren.

Kleurcontrastregel wordt niet uitgevoerd wanneer tekst- en achtergrondkleuren gelijk 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 waar de tekst in een weergave dezelfde kleur heeft als de achtergrond, is ons machine learning-algoritme niet in staat om te 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 gebruik maken van de hinttekstfunctie kunnen foutieve meldingen zien met de EditTextName regel. Hinttekst werd pas geïntroduceerd vanaf Android 8 (SDK 26). Het gebruik van dit element in uw XML-app 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 overkomen, 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 eerdere Android-versies, kunt u overwegen om het gebruik van de hintText functie te vermijden, aangezien deze officieel niet wordt ondersteund.

Android verborgen weergaven geven resultaten

U kunt resultaten zien voor weergaven die verborgen zijn achter andere weergaven op het scherm. Deze verborgen weergaven zijn niet beschikbaar voor ondersteunende technologie, maar axe DevTools Mobile meldt 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 vereisen geen oplossing om toegankelijkheid te garanderen.

Fout bij uitvoeren van ML Kit Tekstherkenning

ML Kit tekstherkenning is vereist in veel van de regels van axe DevTools Mobile om de nauwkeurigheid van de resultaten te verzekeren. De ML Kit-bibliotheek zou automatisch moeten worden geïmporteerd wanneer u axe DevTools Mobile in uw geautomatiseerde Espresso- of UIAutomator-tests aanroept. In sommige gevallen gebeurt de automatische import echter 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 te overkomen, moet u de ML Kit-bibliotheek handmatig in uw project importeren. In het build.gradle bestand van uw applicatie, voeg het volgende toe onder afhankelijkheden:

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

Find a full working example of the ML Kit library being imported in the Android Mobile SDK Getting Started section, under Implementatie

Aanraakdoelverspreiding en Jetpack Compose

De aanraakdoelverspreidingsregel wordt momenteel niet uitgevoerd op schuifcomponenten die in Jetpack Compose zijn geschreven. Er kan op dit moment geen actie worden ondernomen. Er komt echter binnenkort een oplossing!

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 machtigingsfout. Het resultaat wordt nog steeds opgeslagen als een JSON-bestand, ondanks dat deze fout wordt weergegeven. De fout kan onderdrukt worden door de code in het volgende blok uit te commentariëren:

def clearDirectoryTask = task('clearDirectoryTask', type: Exec, group: 'reporting') {
    executable "${android.getAdbExecutable().toString()}"
    args 'shell', 'rm', '-r', '/storage/emulated/0/Documents/AxeTestCases'

// finalizedBy { // fetchAndroidFolderAxeReportsTask // } }
Houd er rekening mee dat deze code alleen moet worden uitgecommentarieerd voor API 30, aangezien dit problemen veroorzaakt bij het lokaal opslaan voor andere API-niveaus.

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 scrollweergave gedeeltelijk buiten het scherm vallen. Om een element op toegankelijkheid te testen, moet u ervoor zorgen dat het volledig op het scherm is voordat u de scan uitvoert.

Analyzer App: Floating Action Button Verdwijnt

Met API 31 (Android 12) is de mogelijkheid geïntroduceerd om niet-systeem overlays te verbergen. Om de axe Analyzer-app te gebruiken, moet u ervoor zorgen dat deze instelling niet is ingeschakeld. Als u ervoor heeft gekozen deze functie te gebruiken vanwege de beveiligingsverbeteringen, raden we aan deze uit te laten voor interne testbuilds waar u veilig testgegevens kunt gebruiken en zo 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 setHideOverlayWindows(true) bij setHideOverlayWindows(false) op de getroffen activiteitsvensters.

Schermafbeelding Ontbreekt (Zwarte Doos) in het Dashboard

Om de volledige functionaliteit van axe DevTools voor Mobile te ontgrendelen, moet u ervoor zorgen dat schermafbeeldingen zijn ingeschakeld. We raden aan schermafbeeldingen in te schakelen op een debug- of testversie van uw app die mockdata gebruikt om beveiligingsproblemen te vermijden. Bekijk onze gids voor het inschakelen van schermafbeeldingen in Android-apps.

Crash wanneer minifiedEnabled op true is ingesteld

Als u uw build minimaliseert, treedt er een crash op met een foutlogboek waarin staat dat een adapter niet kan worden gevonden bij het proberen in te loggen op de axe DevTools-bibliotheek. Schakel minify uit voor uw debugbuilds met axe DevTools 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.** { *; }

Foutmeldingen bij gebruik van Compose API's

De Compose API's zijn verouderd, gebruik alstublieft de layout-agnostische API's om updates te blijven ontvangen. Als u de Compose API's blijft gebruiken en een fout tegenkomt zoals `Precies '1' node verwacht, maar '2' nodes gevonden die voldoen aan: (isRoot)` of `Geen weergave geïnitialiseerd, heeft u AxeDevToolsCompose.setComposeTestRule() aangeroepen?`, raadpleeg dan Compose setTestTag API.

MAUI: Regel voor Naam van Tekstinvoer

Vanwege beperkingen van de MAUI-apparchitectuur in het Android-ecosysteem, zal de regel voor de Naam van Tekstinvoer als Moet Worden Beoordeeld worden weergegeven in het dashboard wanneer een fout wordt vermoed voor SDK-versie 5.5.0 en hoger. Bevestig in dit geval handmatig het correcte gedrag.

Native Android: Aangepaste Dialogen / Modalen

Wanneer u aangepaste dialogen of modalen implementeert die de native controles niet uitbreiden, kunt u resultaten krijgen voor weergaven achter de modal. In dat geval raden we aan onze tool niet op deze aangepaste modalen of dialogen uit te voeren en in plaats daarvan handmatig te controleren of ze zich gedragen zoals gewenst met ondersteunende technologie.

Web Dashboard

Ontbrekende Schermafbeelding

Als de schermafbeelding ontbreekt op de scan-detailpagina, voorkomt uw app mogelijk dat schermafbeeldingen worden gemaakt. Vaak is dit om beveiligingsredenen in uw productie-applicatie. Overweeg om deze eis te verwijderen voor uw testbuild om volledige functionaliteit in het axe DevTools Mobile Dashboard mogelijk te maken.

Sommige Android-scannamen zijn niet opgemaakt

Enkele standaard Android-scannamen die als schermtitel worden weergegeven, verschijnen als de volledige class-naam inclusief de bundelidentificatie. In een toekomstige release zal dit worden opgelost zodat de schermtitel wordt omgezet in een beter leesbare naam. Als tijdelijke oplossing kunt u de scannaam instellen vanaf het dashboard of frameworks. (#1643)