Notas de la versión de axe DevTools Mobile del 12 de febrero de 2025

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

12 de febrero de 2025

Not for use with personal data

Versiones de componentes

  • SDK de Android (axe-devtools-android v6.1.0)
  • Analizador de Android (Analizador de accesibilidad axe v1.11.0)
  • Controlador Appium de Android (axe-appium-uiautomator2-driver v1.3.0)
  • axe DevTools Reporter CLI v4.10.0

Cómo actualizar: Android SDK, Android Analyzer, Android Appium Driver, axe DevTools Reporter CLI

¿Qué hay de nuevo?

Controlador de Appium para Android

¡La función Ignorar reglas ahora está disponible para el controlador Appium de Android! Consulta nuestra documentación sobre cómo ignorar reglas en Android , ten en cuenta que, para el controlador de Android de Appium, la función de ignorar reglas solo se puede implementar con todas las vistas, no con vistas seleccionadas ni por nombre de clase. Para obtener más información sobre cómo ignorar reglas, consulta nuestra [documentación de configuración de Appium] . (https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#execute_scriptmobile-axescan-settings) Próximamente habrá soporte para el controlador Appium de iOS.

CLI del reportador de axe

Ahora, cuando genere un informe HTML a partir del archivo JSON del escaneo móvil, podrá ver el puntaje de accesibilidad junto con el recuento total de problemas, el índice de aprobación y el recuento de gravedad del problema. Puede ver una puntuación para todos los escaneos o seleccionar un solo escaneo para ver su puntuación. Esta adición se alinea con el Puntuación de accesibilidad que ves en el Panel de axe DevTools Mobile.
Como referencia, la tasa de aprobación es el porcentaje de requisitos de accesibilidad que se cumplieron satisfactoriamente del número total de requisitos verificados. El puntaje de accesibilidad se calcula en función del número total de pantallas, el número de problemas y la gravedad de esos problemas.

Correcciones de Android

  • Resultados más consistentes y confiables en aplicaciones nativas y multiplataforma
  • Mejoras de accesibilidad para la aplicación Analyzer
  • Actualizaciones para mejorar el rendimiento y la precisión de todas las reglas de accesibilidad.

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.

important
  • 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.

Error "No se pudo serializar AxeResult" en el Proyecto del Analizador v1.2.0 y SDK v2.12.3

Escanear algunas aplicaciones con esta versión del analizador y SDK generaría un error "No se pudo serializar AxeResult". Actualice a la última versión para resolver el error. Actualice al último proyecto del Analizador de iOS.Actualice al último SDK de iOS.

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

Espaciado de área táctil y Jetpack Compose

La regla de espaciado de área táctil no se ejecuta actualmente en ningún componente de control deslizante escrito en Jetpack Compose. No se puede realizar ninguna acción en este momento. ¡Sin embargo, pronto habrá una solución!

Error al guardar resultados localmente en API 30

En la API 30 de Android, una de las ubicaciones donde intentamos guardar los resultados localmente tiene un error de permisos. El resultado se guardará como un archivo JSON a pesar de que se muestre este error. El error se puede eliminar comentando el código en el siguiente bloque:

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

Tenga en cuenta que este código solo debe comentarse para API 30, ya que causará problemas al guardarlo localmente para otros niveles de API.

Detección de desplazamiento en aplicaciones híbridas y multiplataforma

En algunas aplicaciones híbridas y multiplataforma, es posible que devolvamos resultados inesperados cuando los elementos en una vista de desplazamiento estén parcialmente fuera de la pantalla. Para probar la accesibilidad de un elemento, asegúrese de que esté completamente en pantalla antes de realizar el escaneo.

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()?

Las API de Compose están obsoletas; utilice las API independientes del diseño para seguir recibiendo actualizaciones. Si continúa usando las API de Compose y encuentra un error similar a `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)