Auto Scan

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

Identificeer automatisch toegankelijkheidsproblemen terwijl je bestaande UI-tests je app gebruiken

Not for use with personal data

Overzicht

Auto Scan identificeert automatisch toegankelijkheidsproblemen terwijl je bestaande Espresso- of UIAutomator-tests je app gebruiken, zonder dat je individuele scanoproepen of aanpassingen aan je tests hoeft toe te voegen. Auto Scan luistert naar schermwijzigingen en scant elk uniek scherm automatisch.

tip

Als je meer gedetailleerde controle in je tests nodig hebt, zie dan Gerichte Testen.

Hoe het werkt

Onze Gradle-plugin vervangt je JUnit-instrumentatietestuitvoerder door onze aangepaste uitvoerder. Dit stelt ons in staat om je testsuite te observeren en je resultaten op het juiste moment te verwerken. Download de AxeDevToolsMobile Gradle plugin. Wanneer de test eindigt, verwerkt Auto Scan je resultaten en slaat een JSON-resultaat voor elk scherm op, evenals een zelfstandig HTML-rapport naar AxeDevToolsMobileResults, en optioneel worden resultaten geüpload naar de Developer Hub.

Aan de slag

  1. Een paar waarden moeten worden ingesteld om gebruikers te configureren en te authenticeren. We raden aan deze toe te voegen als omgevingsvariabelen op je computer en op je CI/CD-pijplijnen om je sleutels veilig te houden.

    Groovy (build.gradle):

    axeDevTools {
        axeMobileApiKey = ''
        axeAutoScanMode = true
        axeProjectId = ''
    }

    Kotlin DSL (build.gradle.kts):

    axeDevTools {
        axeMobileApiKey = ""
        axeAutoScanMode = true
        axeProjectId = ""
    }
  2. Als je onze tools gebruikt en de voorkeur geeft aan resultaten in offline modus, moet je een waarde instellen voor de axeOfflineLicenseKey in plaats van axeMobileApiKey en axeProjectId.

    Groovy (build.gradle):

    axeDevTools {
        axeOfflineLicenseKey = ''
        axeAutoScanMode = true
    }

    Kotlin DSL (build.gradle.kts):

    axeDevTools {
        axeOfflineLicenseKey = ""
        axeAutoScanMode = true
    }

Resultaten interpreteren

Console Samenvatting

Zodra de testsuite is voltooid, kun je bewerkingen zien in je Gradle logs, gevolgd door een samenvatting.

HTML rule report written to: /Users/user/Documents/workspace/android/project-name/app/build/reports/AxeDevToolsMobileResults/AxeDevToolsMobile_1773882427726.html
---- Axe DevTools Mobile Accessibility Summary ----
Scan 1:
  Screen: Home Page
  Issues: 6
  Issues by rule:
    - TouchSizeWcag: 3
    - LabelAtFront: 1
    - LabelInName: 1
    - FocusableText: 1
    
Scan 35:
  Screen: Wikipedia Alpha
  Issues: 5
  Issues by rule:
    - LabelAtFront: 1
    - LabelInName: 1
    - TouchTargetSpacing: 1
    - TouchSizeWcag: 1
    - ColorContrast: 1
    
Total Scans: 35
❌ Total Issues: 123
---------------------------------------------------

Uitvoerbestanden

Auto Scan genereert een zelfstandig HTML-rapport met screenshots, weergavehiërarchiedata en gedetailleerde probleeminformatie. Individuele JSON-resultaten worden opgeslagen in de axe-test-data map. Alle bestanden worden opgeslagen in de app/build/reports/AxeDevToolsMobileResults map.

Bestand Formaat
AxeDevToolsReport.html Interactief HTML-rapport met problemen per scherm, elementdetails, impactniveaus, weergavehiërarchie
<timestamp>-axe-node-hierarchy.json Individueel JSON-resultaat - 1 voor elke scan die is uitgevoerd

Auto Scan Ondersteuning

Regels

Auto Scan voert de volledige Axe-regelset uit met uitzondering van ScreenOrientation en alle experimentele regels (bijv. NestedActiveControl, NestedElementName, InaccessibleAction). Vind gedetailleerde informatie over wat we controleren in het Regeloverzicht voor Android.

Ontwikkelaarshub

Auto Scan uploadt automatisch je resultaten naar Axe Ontwikkelaarshub. Als je de resultaten alleen lokaal wilt opslaan, stel axeUploadResults in op false.

Configuratiereferentie

Eigenschappen

Eigenschap Type Vereist Details
axeAutoScanMode Boolean Vereist Standaardwaarde is false. Moet worden ingesteld op true om auto scan in te schakelen.
axeUploadResults Boolean Optioneel Standaardwaarde is true. Stel in op false voor alleen lokale resultaten
axeMobileApiKey String Optioneel Een Axe DevTools Mobile API-sleutel van axe.deque.com is **vereist** als axeUploadResults=true
axeProjectId String Optioneel Een Project-ID van Ontwikkelaarshub is **vereist** als axeUploadResults=true
axeServerUrl String Optioneel Aangepaste backend-URL, alleen voor on-premise/private cloud
axeOfflineLicenseKey String Optioneel Alleen vereist voor offline modus, wanneer axeUploadResults=false

Beste Praktijken

Animaties Uitschakelen

Verkrijg de meest nauwkeurige en uitgebreide resultaten van Auto Scan door animaties uit te schakelen. Dit zorgt ervoor dat schermen volledig worden weergegeven wanneer ze worden vastgelegd. Als animaties niet zijn uitgeschakeld, merk je mogelijk:

  • Dubbele scans waarvan je dacht dat ze hadden moeten worden weggelaten
  • Scans met screenshots die een tijdelijke toestand tonen
  • Een aanzienlijk lagere schermopnamesnelheid dan je zou verwachten

Probleemoplossing

Als je de scans niet ziet verschijnen in Developer Hub, moet je je logs controleren voor aanwijzingen over wat er mis kan zijn of deze checklist doorlopen.

  • Controleer dat axeAutoScanMode=true in je axeDevTools configuratieblok
  • Controleer of je in staat was om onze afhankelijkheid van Maven Central te verkrijgen
  • Zorg ervoor dat je de juiste variabele gebruikt voor je API/Licentiesleutel en Project-ID
  • Controleer de grootte van je uitvoerbestanden. De upload naar Developer Hub mislukt als de grootte van een resultaatbestand groter is dan 20MB, hoewel alle resultaten nog steeds lokaal worden opgeslagen en in het lokale HTML-rapport worden weergegeven.

Wat nu?

Je kunt je resultaten bekijken in Axe Developer Hub. Leer hoe je Axe DevTools Mobile in je CI/CD-pipeline integreert. Gebruik je een cloudgebaseerd testplatform? Je kunt Axe DevTools Mobile nog steeds gebruiken om te zoeken naar toegankelijkheidsproblemen: Integreren met Cloud Platforms.