El testing de accesibilidad comprueba que un sitio pueda ser usado por todas las personas, incluidas las que navegan con lector de pantalla, solo con teclado o con baja visión. El estándar de referencia son las WCAG del W3C. Para automatizarlo, axe (de Deque) es el motor de reglas más usado: analiza el HTML de una página y reporta problemas como imágenes sin texto alternativo, contraste insuficiente o campos de formulario sin etiqueta. Se integra dentro de Playwright con pocas líneas, de modo que cada prueba de interfaz también comprueba accesibilidad. Lo crucial, y lo que casi nadie dice: la automatización detecta solo una parte de los problemas —del orden de un tercio a la mitad—; lo demás (¿tiene sentido el orden de tabulación?, ¿se entiende con lector de pantalla?) necesita personas. axe es una red que atrapa lo evidente y barato, no un certificado de accesibilidad.
Ver índice de contenidos
Qué es y por qué importa
La accesibilidad web (a veces abreviada a11y) es la propiedad de un sitio de poder ser usado por cualquier persona, sin importar cómo navegue: con lector de pantalla si no ve, solo con teclado si no usa ratón, con texto ampliado si tiene baja visión, o con más tiempo si tiene una discapacidad cognitiva. No es una función extra: es lo que hace que el sitio sirva para todo el mundo, y en muchos países es además una obligación legal.
El estándar de referencia son las WCAG (Pautas de Accesibilidad para el Contenido Web) del W3C, que definen criterios concretos organizados en niveles de conformidad. No hace falta memorizarlas para empezar: las herramientas las conocen y comprueban contra ellas.
La mayoría de los problemas de accesibilidad se evitan de raíz con un HTML semántico bien hecho: usar los elementos por lo que significan, poner texto alternativo a las imágenes, asociar cada campo con su etiqueta. El testing de accesibilidad no reemplaza escribir buen HTML: comprueba que se hizo.
axe dentro de Playwright
axe-core es un motor de reglas de accesibilidad de código abierto, mantenido por Deque, que analiza el HTML renderizado de una página y reporta violaciones de las WCAG. Es el mismo motor que usan muchas extensiones de navegador, pero integrado en Playwright corre automáticamente en cada prueba, sin que nadie tenga que abrir una extensión a mano.
// Integración de axe en una prueba de Playwright, con el paquete oficial.
import { test, expect } from '@playwright/test';
import AxeBuilder from '@axe-core/playwright';
test('la página de inicio no tiene violaciones de accesibilidad', async ({ page }) => {
await page.goto('/');
// axe analiza el HTML ya renderizado y devuelve las violaciones.
const resultados = await new AxeBuilder({ page }).analyze();
// La prueba falla si hay alguna violación.
expect(resultados.violations).toEqual([]);
});Con esas pocas líneas, cada página que ya pruebas con Playwright pasa además por el análisis de axe. El resultado lista cada violación con su regla, su gravedad y el elemento exacto que la provoca, así que un fallo dice qué arreglar y dónde.
Qué detecta la automatización y qué no
Este es el punto más importante y el que evita el autoengaño. axe detecta muy bien lo comprobable mecánicamente:
| Lo detecta la automatización | Necesita una persona |
|---|---|
| Imágenes sin texto alternativo | Si ese texto alternativo describe bien la imagen |
| Contraste de color insuficiente | Si el orden de tabulación tiene lógica |
| Campos sin etiqueta asociada | Si se entiende con un lector de pantalla |
| Encabezados mal jerarquizados | Si todo el sitio funciona solo con teclado |
| Roles y nombres accesibles ausentes | Si el lenguaje es claro y comprensible |
El dato que hay que tener presente
Las herramientas automáticas detectan del orden de un tercio a la mitad de los problemas de accesibilidad. Pasar todas las comprobaciones de axe no significa que un sitio sea accesible: significa que no tiene los errores más evidentes. Confundir «pasa axe» con «es accesible» es el error conceptual más común, y deja fuera a personas reales.
Integrarlo sin frenar al equipo
Una prueba de accesibilidad que falla por cientos de violaciones el primer día, o que da falsos positivos, termina ignorada. Para que se sostenga:
- Empezar por las páginas claveNo todo el sitio de golpe: las pantallas más usadas primero, y expandir desde ahí.
- Fijar una línea base y no empeorarSi hay muchas violaciones heredadas, registrarlas como deuda y hacer que la prueba falle solo ante violaciones nuevas. Así se frena la regresión sin bloquear todo.
- Acotar el estándaraxe permite comprobar contra un nivel concreto de las WCAG; elegir uno realista y consistente evita ruido.
- Correrlo en el pipelineComo una prueba más, para que cada cambio se compruebe. Cómo, en pruebas con GitHub Actions.
La regla de oro: la automatización de accesibilidad es una red de seguridad que atrapa lo barato y libera tiempo humano para lo que importa, no un obstáculo que el equipo aprende a saltear.
Lo que solo ven las personas
Complementar axe con revisión humana no es opcional si el objetivo es accesibilidad real. Lo mínimo:
- Navegar solo con teclado. Guardar el ratón y recorrer la página con la tecla de tabulación: ¿se llega a todo?, ¿se ve dónde está el foco?, ¿el orden tiene sentido?
- Escuchar con un lector de pantalla. Probar el sitio con la tecnología que usan las personas ciegas revela si el contenido se entiende al oírlo, algo que ninguna herramienta juzga.
- Revisar los textos alternativos. Que existan lo comprueba axe; que signifiquen algo lo comprueba una persona.
Estas comprobaciones son, en esencia, testing manual exploratorio aplicado a la accesibilidad: la automatización descarta lo mecánico, y la persona evalúa lo que requiere juicio.
Errores frecuentes
- Creer que «pasa axe» equivale a «es accesible». La automatización cubre una parte; el resto necesita personas.
- Automatizar todo el sitio de golpe. Cientos de violaciones el primer día terminan en una prueba ignorada.
- No fijar una línea base. Sin ella, la deuda heredada bloquea todo y nadie puede avanzar.
- Saltarse la prueba con teclado y lector de pantalla. Es donde aparecen los problemas que axe no ve.
- Confiar el texto alternativo a la herramienta. axe ve si existe, no si describe bien.
- Dejar la accesibilidad para el final. Sale mucho más caro que hacerla desde el HTML.
- Tratar la accesibilidad como un lujo. Es lo que permite que todo el mundo use el sitio, y a menudo una obligación legal.
Preguntas frecuentes
¿La automatización con axe garantiza que un sitio sea accesible?
No, y creer que sí es el error más común. Las herramientas automáticas de accesibilidad, incluida axe, detectan solo una parte de los problemas, del orden de un tercio a la mitad según las mediciones, porque solo pueden comprobar lo que es verificable mecánicamente a partir del HTML: imágenes sin texto alternativo, contraste insuficiente, campos sin etiqueta, encabezados mal jerarquizados. Pasar todas esas comprobaciones significa que el sitio no tiene los errores más evidentes, no que sea accesible. Cosas fundamentales como si el orden de tabulación tiene lógica, si el contenido se entiende con un lector de pantalla o si un texto alternativo describe de verdad la imagen requieren el juicio de una persona. La automatización es una red que atrapa lo barato y libera tiempo, no un certificado de accesibilidad.
¿Qué es axe y en qué se diferencia de las WCAG?
Son cosas distintas y complementarias. Las WCAG son las Pautas de Accesibilidad para el Contenido Web del W3C: el estándar internacional que define, en criterios concretos y organizados por niveles, qué hace accesible a un sitio. Son la norma, no una herramienta. axe, en cambio, es un motor de reglas de código abierto mantenido por Deque que analiza una página y comprueba automáticamente el cumplimiento de aquellas pautas que se pueden verificar de forma mecánica, reportando cada violación con su regla, su gravedad y el elemento que la provoca. Dicho simple: las WCAG dicen qué debe cumplirse, y axe comprueba automáticamente la parte de ese qué que una máquina puede evaluar. Para la parte que una máquina no puede evaluar, sigue haciendo falta una persona que conozca las WCAG.
¿Por qué integrar axe en Playwright en lugar de una extensión?
Porque integrarlo en Playwright hace que las comprobaciones de accesibilidad corran automáticamente en cada prueba, sin que nadie tenga que acordarse de abrir una extensión y ejecutarla a mano página por página. Es el mismo motor de reglas que usan muchas extensiones de navegador, pero al vivir dentro de la suite de pruebas automatizadas se ejecuta con cada cambio y puede formar parte del pipeline de integración continua, frenando las regresiones antes de que lleguen a producción. La extensión de navegador sigue siendo útil para una revisión puntual y exploratoria durante el desarrollo, pero para una red de seguridad permanente que proteja el sitio a lo largo del tiempo, la integración automatizada es mucho más efectiva porque no depende de que alguien se acuerde de correrla.
¿Cómo evito que la prueba de accesibilidad frene al equipo?
Con una integración gradual y realista. Si se activa de golpe sobre todo un sitio con problemas heredados, la prueba falla por cientos de violaciones el primer día y termina ignorada o desactivada. Lo que funciona es empezar por las páginas más usadas, fijar una línea base que registre las violaciones existentes como deuda conocida y hacer que la prueba falle solo ante violaciones nuevas, de modo que se frene la regresión sin bloquear el trabajo. También conviene acotar el estándar a un nivel concreto de las WCAG para evitar ruido, y correr la comprobación dentro del pipeline como una prueba más. La idea es que la accesibilidad automatizada sea una red de seguridad que el equipo valora, no un obstáculo que aprende a esquivar.
¿Qué comprobaciones manuales son imprescindibles?
Tres, como mínimo, porque cubren justamente lo que la automatización no puede juzgar. La primera es navegar el sitio usando solo el teclado, sin ratón, para comprobar que se llega a todos los elementos interactivos, que se ve claramente dónde está el foco en cada momento y que el orden en que se recorren los elementos tiene sentido. La segunda es probar el sitio con un lector de pantalla, la tecnología que usan las personas ciegas, para verificar que el contenido se entiende al escucharlo de principio a fin. La tercera es revisar que los textos alternativos de las imágenes no solo existan, cosa que ya comprueba axe, sino que describan de verdad lo que la imagen comunica. Estas revisiones son, en el fondo, testing manual exploratorio aplicado a la accesibilidad.
¿La accesibilidad es una obligación o una buena práctica?
Es ambas cosas, y conviene no verla como un lujo opcional. Como buena práctica, la accesibilidad amplía el público que puede usar un sitio e mejora la calidad general del producto, porque muchas mejoras de accesibilidad —estructura clara, buen contraste, contenido comprensible— benefician a todo el mundo, no solo a quienes tienen alguna discapacidad. Y como obligación, en muchos países existe legislación que exige que ciertos sitios, especialmente los públicos y los de empresas de cierto tamaño, cumplan con estándares de accesibilidad, con las WCAG como referencia habitual. Además, tratar la accesibilidad desde el principio, empezando por un HTML semántico bien hecho, sale mucho más barato que intentar agregarla al final sobre un sitio que no la contempló.
Fuentes
Documentación oficial y material de la comunidad consultados para esta guía. Fecha de consulta: 28 de julio de 2026.
Aportes de la comunidad Underc0de
- Underc0de, foro. Sección QA (Quality Assurance). Consultas sobre accesibilidad y automatización de pruebas.
- Underc0de, foro. Sección Desarrollo web. Frontend, HTML semántico y buenas prácticas.
Documentación oficial
- Deque. axe-core. El motor de reglas de accesibilidad de código abierto que hace las comprobaciones, citado en la guía.
- W3C. WCAG. Las Pautas de Accesibilidad para el Contenido Web, el estándar internacional de referencia.
- Playwright. Accessibility testing. Cómo integrar axe dentro de Playwright.
- W3C. Introduction to Web Accessibility. Los fundamentos de por qué importa la accesibilidad.