Notas de la versión de axe DevTools Mobile del 18 de septiembre de 2024
18 de Septiembre, 2024
Versiones de componentes
- SDK de iOS (axeDevToolsXCUI v2.12.4)
- Analizador de iOS (axe-devtools-mobile-analyzer v1.4.0)
- Controlador Appium de iOS (axe-appium-xcuitest-driver v1.0.0)
- Controlador Appium de Android (axe-appium-uiautomator2-driver v1.0.0)
Cómo actualizar: iOS SDK, iOS Analyzer
¿Qué hay de nuevo?
Controladores de Appium ����
Nos complace anunciar dos nuevos drivers de Appium para una solución de pruebas de accesibilidad de Appium líder en la industria. Nuestros controladores funcionan con nuestros SDK probados que le brindan los mismos resultados sólidos y altamente precisos que obtiene con todos nuestros componentes axe DevTools Mobile. Nuestros drivers de Appium cubren todas las reglas móviles disponibles de Deque y la configuración solo toma unos minutos.
¿Actualmente está utilizando el complemento axe DevTools Appium? Consulte nuestra [guía de migración] (appium-plugin-migration) para comenzar a utilizar los nuevos controladores.
Correcciones
SDK y analizador de iOS
- Varias mejoras en la precisión de la regla de contraste de color.
- Se corrigió un error con la serialización que causaba que algunos escaneos fallaran.
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.
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.
Falso positivo: LabelInName y LabelAtFront en SwiftUI y aplicaciones multiplataforma
Algunas pantallas pueden informar falsos positivos con LabelInName y LabelAtFront debido a que se encontró una propiedad associatedText incorrecta (#1622)
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)
La regla de nombre de ImageView para aplicaciones UIKit necesita revisión de resultados
En las aplicaciones UIKit, una imagen sin `accessibilityLabel` no se puede enfocar con tecnología de asistencia de forma predeterminada.
Las propiedades que usamos para verificar la enfocabilidad de Apple pueden ser inexactas cuando se configura un `accessibilityIdentifier` en la imagen. Debido a este comportamiento inesperado, los resultados de los problemas de ImageView Name en las aplicaciones UIKit se informarán como Necesita revisión. Se ha enviado un informe de error a Apple. (#1633)
Falso positivo: en Scroll View, Label In Name, Label at Front, y Image View Name v2.11.0 & 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)
v2.11.0 Image View y nombre del 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. (#1633)
Etiqueta en el nombre y etiqueta al principio
Estas dos reglas buscan la etiqueta visible de un control entre los elementos cercanos para ayudar a determinar el estado de la regla. En algunas jerarquías de visualización, se puede detectar texto cercano incorrecto, lo que provoca que estas reglas fallen. (#1622)
Android
Analyzer App: El botón de acción flotante desaparece
Con la API 31 (Android 12) se introdujo la capacidad de ocultar superposiciones que no son del sistema. Para utilizar la aplicación Axe Analyzer, asegúrese de que esta configuración no esté activada. Si ha optado por utilizar esta función por sus mejoras de seguridad, recomendamos mantenerla desactivada para compilaciones de pruebas internas, donde puede utilizar datos de prueba de forma segura y eliminar problemas de seguridad de esa manera. Nota: esta configuración no afecta a la aplicación de escáner de accesibilidad de Google, ya que se considera una superposición del sistema.
Para utilizar la aplicación Axe Accessibility Analyzer, actualice todas las llamadas al método setHideOverlayWindows(true)
a setHideOverlayWindows(false)
en las ventanas de actividad afectadas.
Captura de pantalla faltante (cuadro negro) en el panel de control
Para desbloquear la funcionalidad completa de axe DevTools para dispositivos móviles, asegúrese de que las capturas de pantalla estén habilitadas. Recomendamos habilitar capturas de pantalla en una versión de depuración o prueba de su aplicación que use datos simulados para evitar problemas de seguridad. Consulta nuestra guía para habilitar capturas de pantalla en aplicaciones de Android.
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.
Mensaje de registro:MlKitContext has not been initialized
Si aparece este mensaje, es posible que algunos resultados de las reglas no aparezcan como se esperaba cuando esa regla utiliza inteligencia artificial. Las reglas afectadas incluyen Contraste de color, Texto con foco y Nombre de elemento anidado. (#841)
MAUI: Regla de Nombre de Texto Editable
Debido a las limitaciones del renderizado de la arquitectura de la aplicación MAUI en el ecosistema Android, la regla Editar nombre de texto se mostrará como Necesita revisión en el panel cuando se sospeche de una falla en la versión 5.5.0 y posteriores del SDK. Confirme manualmente el comportamiento correcto para este caso.
Android nativo: diálogos y modales personalizados
Al implementar cuadros de diálogo o ventanas modales personalizadas que no amplían los controles nativos, puede que obtenga resultados de las vistas que se encuentran detrás de la ventana modal. En este caso, recomendamos no ejecutar nuestra herramienta en estas ventanas modales o cuadros de diálogo personalizados y, en su lugar, verificarlos manualmente para garantizar que se comporten con la tecnología de asistencia como se desea.
Panel de control web
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)