Escaneo Automático
Identifique automáticamente problemas de accesibilidad mientras sus pruebas de UI existentes interactúan con su aplicación
Visión General
El Escaneo Automático identifica automáticamente problemas de accesibilidad mientras sus pruebas existentes de Espresso o UIAutomator interactúan con su aplicación, sin necesidad de agregar llamadas de escaneo individuales ni modificaciones a sus pruebas. Escaneo Automático escucha los cambios de pantalla y escanea cada pantalla única automáticamente.
Si necesita un control más detallado en sus pruebas, consulte Pruebas Dirigidas.
Cómo funciona
Nuestro plugin de Gradle reemplazará su corredor de instrumentación JUnit con nuestro corredor personalizado. Esto nos permite observar su suite de pruebas y procesar sus resultados en el momento apropiado. Obtenga el plugin Gradle de AxeDevToolsMobile.
Cuando la prueba finaliza, Escaneo Automático procesa sus resultados y guarda un resultado JSON para cada pantalla así como un informe HTML independiente en AxeDevToolsMobileResults, y opcionalmente sube los resultados a Developer Hub.
Comenzando
-
Algunos valores deben configurarse para autenticar a los usuarios. Recomendamos agregar estos valores como variables de entorno en su computadora y en sus pipelines de CI/CD para mantener sus claves seguras.
Groovy (
build.gradle):axeDevTools { axeMobileApiKey = '' axeAutoScanMode = true axeProjectId = '' }Kotlin DSL (
build.gradle.kts):axeDevTools { axeMobileApiKey = "" axeAutoScanMode = true axeProjectId = "" } -
Si está utilizando nuestras herramientas y prefiere obtener resultados en modo fuera de línea, deberá establecer un valor para el
axeOfflineLicenseKeyen lugar deaxeMobileApiKeyyaxeProjectId.Groovy (
build.gradle):axeDevTools { axeOfflineLicenseKey = '' axeAutoScanMode = true }Kotlin DSL (
build.gradle.kts):axeDevTools { axeOfflineLicenseKey = "" axeAutoScanMode = true }
Interpretación de Resultados
Resumen de Consola
Una vez que la suite de pruebas termine, podrá ver algo de post-procesamiento en sus registros de Gradle, seguido de un resumen.
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
---------------------------------------------------Archivos de Salida
Escaneo Automático genera un informe HTML independiente con capturas de pantalla, datos de la jerarquía de vista e información detallada de los problemas. Los resultados JSON individuales se guardan en el axe-test-data directorio. Todos los archivos se guardan en el app/build/reports/AxeDevToolsMobileResults directorio.
| Archivo | Formato |
|---|---|
AxeDevToolsReport.html |
Informe HTML interactivo con problemas por pantalla, detalles de elementos, niveles de impacto |
<timestamp>-axe-node-hierarchy.json |
Resultado JSON individual - 1 por cada escaneo realizado |
Si prefiere guardar sus resultados en un directorio específico, puede indicarlo en el bloque de configuración del plugin de su build.gradle archivo.
axeDevTools {
axeMobileApiKey = "AXE_API_KEY"
axeProjectId = "DEVHUB_PROJECT_ID"
axeAutoScanMode = true
axeHtmlReportPath =
"User/Desktop/reports/AxeDevToolsMobileResults"
axeAccountUrl = "https://axe.deque.com"
Soporte de Escaneo Automático
Reglas
Escaneo Automático ejecuta todo el conjunto de reglas de Axe con la excepción de ScreenOrientation y todas las reglas experimentales (ej. NestedActiveControl, NestedElementName, InaccessibleAction). Encuentre información detallada sobre lo que verificamos en el Resumen de Reglas para Android.
Centro de Desarrolladores
Auto Scan sube automáticamente tus resultados al Centro de Desarrolladores Axe. Si solo deseas guardar los resultados localmente, configura axeUploadResults a false.
Referencia de Configuración
Propiedades
| Propiedad | Tipo | Requerido | Detalles |
|---|---|---|---|
axeAutoScanMode |
Booleano | Requerido | Por defecto a false. Debe configurarse a true para habilitar el escaneo automático. |
axeMobileApiKey |
Cadena | Obligatorio* | Una clave API de Axe DevTools Mobile de axe.deque.com es requerido si axeUploadResults=true |
axeOfflineLicenseKey |
Cadena | Obligatorio* | Solo se requiere para modo sin conexión, cuando axeUploadResults=false |
axeUploadResults |
Booleano | Opcional | Por defecto a true. Configúrase a false solo para resultados locales |
axeProjectId |
Cadena | Opcional | Un ID de Proyecto del Centro de Desarrolladores es requerido si axeUploadResults=true |
axeServerUrl (En desuso) |
Cadena | Opcional | URL de backend personalizada (por ejemplo, axe.company.com), para nube privada/on-prem solamente |
axeAccountUrl |
Cadena | Opcional | URL de backend personalizada (por ejemplo, axe.company.com), para nube privada/on-prem solamente |
axeHtmlReportPath |
Cadena | Opcional | Directorio de salida configurable por el usuario para el informe HTML y el resumen. Por defecto es build/reports/AxeDevToolsMobileResults |
axeOfflineLicenseKey |
Cadena | Opcional | Solo se requiere para modo sin conexión, cuando axeUploadResults=false |
* Nota: Debe configurar ya sea el axeMobileApiKey o el axeOfflineLicenseKey en su configuración. La clave API es obligatoria a menos que use el modo sin conexión. La clave de licencia sin conexión es obligatoria solo para el modo sin conexión.
Mejores Prácticas
Desactivar Animaciones
Obtén los resultados más precisos y completos de Auto Scan desactivando las animaciones. Esto garantizará que las pantallas se rendericen completamente cuando se capturen. Si las animaciones no están desactivadas, es posible que notes:
- Escaneos duplicados que creías que deberían haber sido eliminados
- Escaneos con capturas de pantalla que muestran un estado transitorio
- Una tasa de captura de pantalla significativamente menor de lo que podrías esperar
Solución de Problemas
Si no ves que los escaneos aparezcan en Developer Hub, deberías revisar tus registros en busca de pistas sobre lo que podría estar mal o seguir esta lista de verificación.
- Verifica que
axeAutoScanMode=trueen tuaxeDevToolsbloque de configuración - Verifica que pudiste obtener nuestra dependencia de Maven Central
- Asegúrate de estar usando la variable correcta para tu Clave de API/Licencia y el ID del Proyecto
- Revisa el tamaño de tus archivos de salida. La carga en Developer Hub falla si el tamaño de cualquier archivo de resultado es mayor de 20MB, aunque todos los resultados se guardan localmente y se muestran en el informe HTML local.
¿Qué Sigue?
Puedes ver tus resultados en Axe Developer Hub. Aprende cómo integrar Axe DevTools Mobile en tu canal de CI/CD. ¿Usas una plataforma de pruebas basada en la nube? Aún puedes usar Axe DevTools Mobile para buscar problemas de accesibilidad: Integrar con Plataformas en la Nube.
