Notas de la versión de axe DevTools Mobile del 17 de abril de 2024
17 de abril de 2024
Versiones de componentes
- SDK y analizador de iOS (axeDevToolsXCUI v2.10.0)
- SDK de Android (axe-devtools-android v5.4.0)
- Analizador de Android (Analizador de accesibilidad axe v1.7.0)
Cómo actualizar: iOS SDK, iOS Analyzer, Android SDK, Android Analyzer
¿Qué hay de nuevo?
Seguimiento de uso
Hemos facilitado la habilitación del seguimiento del uso de axe DevTools Mobile por parte de su equipo. En la configuración global del Portal de cuentas de axe, configure “Servicio de uso” en “Habilitar” e ingrese su URL y el ID de su organización. Ya no es necesario agregar nada al código. (Nota: El seguimiento de uso ya configurado a través del código para sus pruebas automatizadas seguirá funcionando). Comuníquese con helpdesk@deque.com para obtener el ID de su organización. Cómo habilitar el Servicio de Uso | Acerca del Servicio de Uso
Exportar escaneos en el formato universal axe
Ahora puede exportar escaneos desde el Dashboard de axe DevTools Mobile en el formato JSON universal de axe, un formato estándar utilizado por todos los productos de axe. Utilice este formato cuando desee importar sus resultados de accesibilidad móvil a otro producto Deque, como axe Auditor, o cuando desee agregar programáticamente resultados de accesibilidad de múltiples productos axe utilizando una salida consistente de cada producto. Cómo exportar escaneos desde el Panel de Control | Formato móvil frente a formato universal
Android
- Hemos promovido de estado experimental las reglas Vista accesible inactiva y Texto enfocable . Después de una rigurosa evaluación, confiamos en los resultados. Si has desactivado las reglas experimentales en la configuración del Panel de control, comenzarás a ver resultados de estas reglas. De lo contrario, seguirás obteniendo resultados de estas reglas, pero ya no aparecerán en la sección "Resultados experimentales". Acerca de las reglas experimentales | Configuración del panel de control
iOS
- Estamos depreciando la regla Controles en colisión . Los controles superpuestos ahora están cubiertos por la regla Espaciado entre objetivos táctiles alineada con WCAG. Los resultados de los controles en colisión ahora aparecerán en "Ignorados". Eliminaremos los resultados por completo en una próxima versión.
Solución de errores
Android
- Actualizamos la aplicación Mobile Analyzer para evitar fallas durante la configuración en la versión 11 de Android y anteriores.
- Solucionamos un problema en la aplicación Mobile Analyzer donde una URL de servidor de backend incorrecta causaba que la configuración de la aplicación fallara. Esto se aplica únicamente a clientes de nube privada o locales.
- Corregimos un error en la regla Etiqueta en el nombre que causaba que la regla devolviera incorrectamente un error cuando el texto visible era parte del nombre accesible.
- Para evitar falsos positivos, cualquier componente cuyo contenido no esté completamente en la pantalla ya no será analizado por las reglas Tamaño del objetivo táctil, Espaciado del objetivo táctil o Contraste de color .
- Para evitar falsos positivos en las reglas Etiqueta en nombre, Nombre de elemento anidado y Texto enfocable , ahora marcaremos ciertos escenarios como "Necesita revisión" en lugar de "Falla" cuando no podamos estar 100% seguros de una falla. Debe revisar estos problemas para asegurarse de que el texto accesible esté disponible para la tecnología de asistencia como TalkBack o Voice Access.
iOS
- Para evitar falsos positivos, la regla Vistas en colisión devolverá "Necesita revisión" en lugar de "Falla" en todos los casos.
- Anteriormente, el Servicio de uso solo rastreaba eventos de "inicio de sesión" y ahora rastreará tanto los eventos de "inicio de sesión" como los de "escaneo".
Panel de control
- Se corrigió un error por el cual no se podían exportar los escaneos cuando el nombre de la aplicación contenía un carácter Unicode.
Problemas Conocidos
Si experimenta alguno de los problemas que se indican a continuación, comuníquese con nosotros a helpdesk@deque.com o support.deque.com. Luego podremos notificarle una vez resuelto o de una solución alternativa identificada si no hay ninguna en la lista.
- Las pruebas automatizadas de axe DevTools Mobile se ejecutan en aplicaciones nativas de iOS, Android y React Native. Comuníquese con su representante de Deque para obtener soluciones de pruebas de accesibilidad en su pila tecnológica.
- Si bien puede obtener algunos resultados de las vistas web o los PDF renderizados, le recomendamos encarecidamente realizar pruebas con axe DevTools for Web o axe Monitor para obtener las pruebas de accesibilidad más completas para la web.
axe DevTools Mobile para iOS
Error en el Proyecto del Analizador & Prueba por ID de paquete en 2.8.1
La funcionalidad para probar una aplicación por identificador de paquete no funcionaba en la versión 2.8.1, lo que generaba un error titulado "No se especificó la ruta de la aplicación de destino a través de la configuración de prueba: ...". Actualice a 2.8.2 o la última versión para resolver el error. Actualización a la última versión del proyecto iOS Analyzer.
Las vistas fuera de la pantalla pueden mostrar resultados para aplicaciones SwiftUI probadas en iOS 17
Con la versión 2.8.0 (Ver notas de la versión), los resultados ya no se informan en vistas que no son visibles, incluidas las que están fuera de la pantalla u ocultas por otra vista. Descubrimos que en las aplicaciones SwiftUI que se están probando en iOS 17, aún se muestran algunos resultados. (#1383)
La regla Supports Dynamic Type no funciona con el simulador de iOS 15 Pro
Hay un problema que afecta al simulador de iPhone 15 Pro que impide que se ejecute la regla Supports Dynamic Type. Si ha optado por la regla Supports Dynamic Type, no podrá probarla usando un simulador de iPhone 15 Pro. Se ha informado de un error a Apple.
Reglas contra los controles anidados
Mientras buscábamos una mejora para nuestras reglas, descubrimos que en XCTest, los controles anidados no se devuelven en el árbol de accesibilidad. Se ha informado de un error a Apple. (#1110)
Falso positivo: en la vista de desplazamiento, ActiveControlName
Estamos trabajando activamente para corregir los siguientes falsos positivos y actualizaremos esta lista a medida que se publiquen las correcciones.
En Scroll View
Puede informar problemas de texto dentro de elementos que funcionan como banners. Para que estos elementos estén disponibles para aquellos que requieren un texto más grande, utilice UILargeContentViewer
. (#622)
Nombre de control activo
Si UIImageView tiene un `accessibilityIdentifier` establecido pero VoiceOver no puede enfocarlo y tiene controles enfocables anidados dentro de él, ActiveControlName puede informar un falso positivo en UIImageView. Quitar el `accessibilityIdentifier` resuelve el problema. Se ha informado de un error a Apple. (#1226)
Falso negativo: Image View Name, texto enfocable en iOS 13 a través de iOS 14.8.1
Estamos trabajando activamente para corregir los siguientes falsos negativos y actualizaremos esta lista a medida que se publiquen las correcciones.
Nombre de la vista de la imagen
Si un UIImageView tiene un `accessibilityIdentifier` establecido pero VoiceOver no puede enfocarlo, ImageViewName puede informar un falso negativo en UIImageView. Quitar el `accessibilityIdentifier` resuelve el problema. Se ha informado de un error a Apple. (#1226)
Texto enfocable
Los elementos marcados como elementos no accesibles pueden arrojar resultados incorrectos debido a un error en el marco de Apple.
axe DevTools Mobile para Android
Fallo al usar Proguard
Si su compilación de depuración o prueba utiliza Proguard, siga los pasos para excluir Deque en su configuración de Proguard.
Se bloquea cuando `minifiedEnabled` se establece como verdadero
Si minimiza su construcción, verá un cierre inesperado con un registro de error que informa que no se pudo encontrar un adaptador al intentar iniciar sesión en la biblioteca DevTools de axe. Deshabilite la minimización para sus construcciones de depuración con axe DevTools implementado. (#729)
Las compilaciones con r8 habilitado arrojan un error
Una construcción con r8 habilitado puede intentar minimizar la biblioteca axeDevTools, lo que genera un error similar al siguiente:
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)Para resolver este error, agregue la siguiente línea a su archivo ProGuard para mantener las clases axeDevTools:
keep class com.deque.** { *; }
Mensaje de error similar a:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
o: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?
Si encuentra un error como `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)` o `No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?`, consulte la API setTestTag de Compose.
Panel de control de axe DevTools Mobile
Falta captura de pantalla
Si la captura de pantalla falta en la página de detalles del escaneo, es posible que tu aplicación esté impidiendo que se tomen capturas de pantalla. A menudo, esto se debe a razones de seguridad en tu aplicación de producción. Considere eliminar este requisito para su compilación de prueba para permitir la funcionalidad completa en el Dashboard de axe DevTools Mobile.
Algunos nombres de escaneo de Android no tienen formato
Algunos nombres de escaneo de Android que están predeterminados en el título de la pantalla aparecerán como el nombre de clase completo, incluido el identificador del paquete. En una versión futura, se resolverá este problema para que el título de la pantalla tenga un formato más legible. Como solución alternativa, puede configurar el nombre del análisis desde el panel de control o los frameworks. (#1643)
axe DevTools Mobile para Appium
Falso positivo: nombre de vista activa
Debido a las limitaciones en la información disponible a través de la plataforma Appium, hemos identificado un resultado incorrectamente positivo para el nombre de vista activa al usar la propiedad labeledBy
para proporcionar una etiqueta para un elemento de botón. Estamos explorando soluciones y esperamos una corrección en una versión futura.
React Native y .NET MAUI: Label In Name & Label At Front
Debido a las limitaciones en la información disponible a través de la plataforma Appium, hemos identificado que las reglas Label In Name y Label At Front no pueden ejecutarse para aplicaciones creadas con React Native. Estamos explorando soluciones y esperamos una corrección en una versión futura.
React Native: Inspeccionar jerarquía de vistas mostrando la pantalla anterior
A veces, la propiedad de origen de la página de Appium necesita tiempo adicional para actualizarse entre escaneos. Si esto sucede, verá la jerarquía de vistas de una pantalla anterior al usar la función de inspección en el panel. Para solucionarlo, agregue un pequeño tiempo de espera antes de llamar a la API de origen de la página para solicitar el escaneo de accesibilidad. Ejemplo:
await driver.pause(1000); const result = await driver.getPageSource();