Skip to content

Detección de Trampas de Teclado en Pruebas de Navegación ​

Este documento explica cómo nuestra herramienta de pruebas de accesibilidad detecta y maneja patrones de navegación con teclado que podrían indicar trampas o comportamientos inesperados.

Cómo Funciona ​

La herramienta se enfoca en analizar la secuencia de elementos que reciben el foco al navegar con Tab y Shift+Tab. Se han implementado patrones específicos para identificar comportamientos anómalos.

Patrones de Detección ​

Se han añadido los siguientes patrones para detectar trampas de teclado en la página:

Patrón A→B→A→B: Detección de Ciclos entre Dos Elementos ​

Este patrón identifica una situación donde el foco del teclado alterna repetidamente entre dos elementos específicos (A y B). Esto puede ocurrir si la lógica de navegación de la página está mal configurada, impidiendo al usuario salir de este ciclo.

Ejemplo de Secuencia: ​

  • El foco está en el elemento A.
  • Al presionar Tab, el foco se mueve al elemento B.
  • Al presionar Tab nuevamente, el foco regresa al elemento A.
  • Al presionar Tab una vez más, el foco vuelve al elemento B.

Patrón A→B→C→A→B→C: Detección de Ciclos entre Tres Elementos ​

Similar al patrón anterior, este patrón detecta un ciclo de foco que involucra a tres elementos distintos (A, B y C). Un ciclo de esta naturaleza también indica un problema en la gestión del foco del teclado.

Ejemplo de Secuencia: ​

  • El foco está en el elemento A.
  • Al presionar Tab, el foco se mueve al elemento B.
  • Al presionar Tab nuevamente, el foco se mueve al elemento C.
  • Al presionar Tab una vez más, el foco regresa al elemento A.
  • Al presionar Tab nuevamente, el foco se mueve al elemento B.
  • Al presionar Tab una vez más, el foco se mueve al elemento C.

Patrón A→A→A→A: Detección de Repetición en un Único Elemento ​

Este patrón se activa cuando el foco del teclado permanece en el mismo elemento (A) de forma consecutiva, a pesar de que el usuario esté intentando navegar a otros elementos. Esto puede suceder si un elemento captura el foco de manera persistente o si la navegación está bloqueada.

Ejemplo de Secuencia: ​

  • El foco está en el elemento A.
  • Al presionar Tab, el foco permanece en el elemento A.
  • Al presionar Tab nuevamente, el foco sigue en el elemento A.
  • Al presionar Tab una vez más, el foco continúa en el elemento A.

Proceso de Detección ​

La herramienta registra la secuencia de elementos que reciben el foco durante la navegación. Al detectar cualquiera de estos patrones, se genera una alerta indicando la presencia de una trampa de teclado. Esto permite a los desarrolladores identificar y corregir problemas de accesibilidad relacionados con la navegación por teclado.