Uso con Puppeteer

Puppeteer es una librería de Node.js para controlar Chrome/Chromium en modo headless o completo mediante el protocolo DevTools. Se utiliza para automatizar navegadores y ejecutar scripts. A menudo se emplea en pruebas, aunque no es en sí mismo un framework de pruebas. surea11y se integra mediante la integración (binding) @surea11y/puppeteer.

$ npm install @surea11y/puppeteer puppeteer

Puppeteer descarga su propio Chrome incluido como parte de npm install: a diferencia de Playwright, no hay un paso separado de instalación del navegador.

const puppeteer = require('puppeteer');
const { A11yCoreBuilder } = require('@surea11y/puppeteer');
 
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://example.com/');
 
const results = await new A11yCoreBuilder({ page })
.include('#main') // optional -- call multiple times for multi-region scans
.exclude('.cookie-banner') // optional
.withTags(['wcag2a', 'wcag2aa'])
.disableRules(['meta-refresh-no-exceptions'])
.analyze();
 
console.log(results.checksResults.filter(r => r.outcome === 'fail'));
await browser.close();

Consulta también un ejemplo ejecutable en el propio repositorio del paquete.

Siguiente: elige qué reglas se ejecutan, integra el análisis en CI y consulta la estructura completa del resultado.