Elegir una integración de Node.js
Cómo elegir el paquete de Axe DevTools para Web que se adapte al tipo de prueba que estás escribiendo
Axe DevTools para Web ofrece varios paquetes de Node.js y JavaScript. Todos ejecutan las mismas reglas de accesibilidad y producen el mismo tipo de resultados. Lo que los diferencia es contra qué se ejecuta un escaneo, lo cual depende del tipo de prueba que estés escribiendo:
- Renders marcaje dentro de la prueba y quieres escanearlo, como en una prueba de componente o unidad. Usa
@axe-devtools/browser. - Tu prueba navega a una página en un navegador y quieres escanear esa página, como en una prueba de extremo a extremo. Usa el paquete para la herramienta que ya maneja tu navegador.
Si ya sabes qué paquete necesitas, ve a Opciones de Instalación.
Escaneo del marcaje que tu prueba genera
El paquete @axe-devtools/browser es una biblioteca de JavaScript cargada en la página que tus pruebas ejercitan. La inicializas una vez y luego pasas a AxeDevTools.run() un elemento DOM para escanear. Como toma un elemento en lugar de una sesión de navegador, es adecuado para ejecutores de pruebas que generan su propio marcaje, como Jasmine, Karma, o una biblioteca de pruebas ejecutándose bajo Jest.
A pesar de su nombre, @axe-devtools/browser no es una herramienta interactiva ni una extensión de navegador. Funciona dentro de las pruebas automatizadas de la misma manera que lo hacen los otros paquetes.
Karma
Karma no es una integración separada. Escribes pruebas con @axe-devtools/browser y añades @axe-devtools/karma-json-reporter como un complemento de Karma. El reportero escribe un archivo JSON por cada escaneo que registras y @axe-devtools/cli convierte esos archivos en informes después de ejecutar la prueba.
Escaneo de páginas a las que tu prueba navega
Si tu suite de pruebas abre páginas en un navegador, elige el paquete que se adapte a la herramienta que ya maneja ese navegador. Cada uno añade escaneo de accesibilidad a la sesión que tus pruebas ya tienen, por lo que no necesitas cambiar la forma en que tus pruebas inician el navegador o llegan a la página.
| Tus pruebas usan | Paquete | Guía |
|---|---|---|
| Playwright | @axe-devtools/playwright |
Playwright |
| Puppeteer | @axe-devtools/puppeteer |
Puppeteer |
| WebdriverIO | @axe-devtools/webdriverio |
WebdriverIO |
WebDriverJS (selenium-webdriver) |
@axe-devtools/webdriverjs |
WebDriverJS |
| Cypress | @axe-devtools/cypress |
Cypress |
Cypress se configura de manera diferente a los demás. En lugar de crear un objeto Axe DevTools alrededor de un controlador, registras un complemento en cypress.config.js e importas el paquete en tu archivo de soporte, lo que añade comandos de Axe DevTools a cy.
Cucumber
Cucumber tampoco es una integración separada. Configura WebDriverJS, WebdriverIO o Puppeteer primero, luego define pasos de Gherkin reutilizables que lo llamen.
Reportes, registro y Axe Developer Hub
Estos paquetes funcionan junto con cualquiera de las integraciones anteriores, en lugar de reemplazar una:
- Node Reporter (
@axe-devtools/reporter) genera informes a partir de tus resultados guardados. - Node Logger (
@axe-devtools/logger) registra resultados de accesibilidad mientras tus pruebas se ejecutan. - Cargar tus resultados en Axe Developer Hub explica cómo enviar resultados a Axe Developer Hub.
Todavía no estás seguro
Si ninguno de estos coincide con cómo funcionan tus pruebas, contacta a tu representante de Deque o pregunta a través de nuestra mesa de ayuda.
