Skip to content

Test de operabilidad por teclado ​

Descripción general ​

El test Keyboard Operable verifica si todos los elementos interactivos de una página web pueden activarse utilizando un teclado, sin necesidad de usar un mouse u otro dispositivo apuntador. Este test ayuda a detectar violaciones del criterio de éxito WCAG 2.1 Success Criterion 2.1.1 Keyboard (Nivel A).

Las personas que dependen del teclado, dispositivos de acceso por interruptores u otras tecnologías de asistencia deben poder interactuar con todos los botones, enlaces, menús y controles de una página. Si un elemento solo responde a clics del mouse pero ignora la entrada desde el teclado, se crea una barrera significativa de accesibilidad para estos usuarios.


Qué verifica el test ​

El test se enfoca en elementos interactivos, es decir, elementos que se espera que el usuario active o utilice, tales como:

  • Botones
  • Checkboxes y radio buttons
  • Menús desplegables (<select>)
  • Paneles de pestañas y controles tipo acordeón
  • Cualquier elemento con un manejador de clic que abra algo (modales, tooltips, menús, selectores de archivos, etc.)

Para cada elemento, el test verifica que presionar la tecla de teclado esperada — Enter, Space o Arrow keys — produzca el mismo resultado que hacer clic con el mouse.


Cómo funciona el test — Paso a paso ​

Paso 1 — Pausar animaciones ​

Antes de que comience la prueba, la herramienta pausa todas las animaciones CSS en la página. Esto asegura que las transiciones visuales no interfieran con la detección de si un elemento realmente respondió a la entrada del teclado.

Paso 2 — Descubrir elementos interactivos ​

El test analiza la página (o una sección específica que definas) y recopila todos los elementos interactivos. Cada elemento se identifica por su etiqueta, rol ARIA y otros atributos para poder ser evaluado individualmente.

Paso 3 — Probar cada elemento ​

Para cada elemento interactivo encontrado, el test:

  1. Enfoca el elemento utilizando el teclado (navegación con Tab).
  2. Presiona la(s) tecla(s) esperada(s) — por ejemplo:
    • Un <button> → Enter y Space
    • Un checkbox → Space
    • Un desplegable <select> → Space y luego Arrow Down
    • Un panel de pestañas → Enter y Space
  3. Observa si ocurrió algún cambio en la página — por ejemplo:
    • Cambió un atributo ARIA (por ejemplo aria-expanded pasó de false a true)
    • Apareció un menú, modal o panel
    • Cambió una clase o estilo en el elemento (indicando que reaccionó)
    • Se abrió un selector de archivos o un diálogo
  4. Si el teclado no produce ningún cambio, el test intenta hacer clic en el elemento con el mouse para confirmar que el elemento sí es funcional — pero que simplemente no funciona con teclado.
  5. Reporta un issue si el elemento responde al mouse pero no al teclado.

Paso 4 — Restaurar el estado de la página ​

Después de probar cada elemento, la herramienta cierra automáticamente cualquier menú, modal o ventana emergente que se haya abierto durante la prueba. Esto evita interferencias con el siguiente elemento que será evaluado.

Paso 5 — Reportar resultados ​

Al final, el test resume cuántos elementos fueron evaluados, cuántos se omitieron (formularios, enlaces simples y otros elementos que se excluyen intencionalmente) y cuántos problemas de accesibilidad se encontraron.


Qué se omite (y por qué) ​

El test omite inteligentemente ciertos elementos para evitar falsos positivos y prevenir acciones no deseadas:

Tipo de elementoPor qué se omite
Enlaces simples (<a href="...">)Navegar fuera de la página es un comportamiento esperado
Campos de formulario (<input>, <textarea>)Presionar Enter podría enviar el formulario
Botones de envío (submit)El formulario se enviaría y la página cambiaría
Pestañas ya seleccionadasNo se espera ningún cambio al seleccionar algo que ya está activo
Elementos visualmente ocultosNo son visibles para los usuarios
Elementos sin operación de teclado definidaSi no existe interacción estándar con teclado, el elemento no se evalúa

Errores comunes y malentendidos ​

"El test reportó un issue, pero puedo operar el elemento con teclado." ​

Qué revisar:

El elemento puede utilizar una interacción de teclado no estándar. Por ejemplo, un widget personalizado que requiere Arrow keys en lugar de Enter o Space puede no coincidir con el patrón de teclas esperado. Esto también puede ser un problema de accesibilidad si no sigue las convenciones ARIA de interacción con teclado.

Asegúrate de que el elemento tenga el atributo ARIA role correcto para que la herramienta sepa qué teclas esperar.


"Un <select> fue marcado como no operable con teclado." ​

Qué revisar:

Algunos reemplazos personalizados de <select> parecen desplegables, pero en realidad están construidos con elementos <div> o <ul> y pueden no manejar correctamente los eventos de teclado.

Los elementos <select> nativos siempre deberían ser operables con teclado. Si se utiliza un reemplazo personalizado, verifica que implemente soporte completo para teclado.


"El nombre o etiqueta del elemento aparece vacío o incorrecto en el reporte." ​

Qué revisar:

El elemento puede no tener un nombre accesible (por ejemplo falta aria-label, texto visible o alt en imágenes). Aunque esto se muestra dentro del contexto del test Keyboard Operable, en realidad corresponde principalmente a un issue de accesibilidad relacionado con Labels/Names.


"El test se agotó por tiempo en una página específica." ​

Qué revisar:

Algunas páginas con frameworks JavaScript pesados (por ejemplo aplicaciones complejas en React tipo SPA) pueden tardar más tiempo en estabilizarse. Intenta ejecutar el test nuevamente.

Si el problema persiste, considera limitar el test a un contenedor específico de la página en lugar de analizar la página completa.


Referencia WCAG ​

Este test evalúa el siguiente criterio de éxito de WCAG 2.1:

CriterioNivelDescripción
2.1.1 KeyboardA (Requerido)Toda la funcionalidad del contenido debe ser operable mediante una interfaz de teclado sin requerir tiempos específicos para cada pulsación de tecla.

No cumplir este criterio significa que los usuarios que no pueden utilizar un mouse — incluidas personas con discapacidades motoras que dependen de la navegación únicamente con teclado — no podrán utilizar el contenido interactivo.


Tests relacionados ​

El test Keyboard Operable forma parte del conjunto de tests de Keyboard Navigation, que también incluye:

  • Focus Order — verifica que el orden de navegación con teclado siga una secuencia lógica
  • Focus Visible — verifica que el elemento enfocado tenga una indicación visual clara
  • Focus Lost — verifica que el foco nunca se pierda inesperadamente después de una interacción
  • Navigation — verifica los patrones de navegación en widgets (menús, carruseles, etc.)

Ejecutar el conjunto completo de Keyboard Navigation proporciona una cobertura completa de accesibilidad para navegación con teclado.