Informe HTML
Un informe HTML autocontenido que puedes abrir en un navegador después de un análisis: sin servidor, sin recursos externos, sin peticiones de red. Pensado para quienes hacen pruebas de control de calidad (QA) o revisión manual y quieren una vista navegable de los resultados de un análisis en lugar de JSON sin procesar o un resumen de terminal.
$ surea11y scan ./dist/index.html --html report.html
Abre report.html directamente desde el disco. Funciona junto a cualquier otro modo de salida: --html no sustituye a --json/al resumen predeterminado, es un artefacto adicional escrito en la ruta indicada.
Qué muestra
- Cabecera: un titular en lenguaje llano ("N de M comprobaciones aplicables pasaron") más una barra apilada y una leyenda (icono + etiqueta + recuento; el estado nunca depende solo del color) desglosada por resultado (
fail/cantTell/pass/notApplicable). - Vale la pena revisar: una tarjeta por regla con ocurrencias
fail/cantTell(no una por ocurrencia: una regla con muchas ocurrencias idénticas es una sola cosa que merece atención, no muchas), cada una mostrando gravedad, chip(s) de SC de WCAG, una ocurrencia representativa y el recuento total de ocurrencias. Limitado a las 24 reglas de mayor prioridad, con una nota de desbordamiento a partir de ahí. - Resumen por WCAG: agrupado por nivel de conformidad (A / AA / AAA), obtenido directamente de los resultados agregados compuestos
rulesResults[]propios del motor (ver Conformidad): una fila por Criterio de Éxito, su resultado, un desglose de aprobado/fallido/necesita revisión/n.a. y qué reglas atómicas contribuyeron. Son datos reales del motor, no una agrupación inventada: el mismo resultado agregado que obtendrías delrulesResultsdel JSON sin procesar. - Datos técnicos completos (contraído por defecto): una tarjeta resumen (mosaicos por resultado) y una tabla con función de búsqueda, filtrable (por resultado) y paginada de cada ocurrencia individual de todo el análisis.
La barra de metadatos bajo la cabecera lleva el recuento de reglas, el recuento de ocurrencias, la etiqueta del motor, la versión del esquema y el idioma al que se resolvió el análisis. El mecanismo de reserva de idioma es por cadena de texto e invisible en el propio texto, así que un informe solicitado en un idioma que el motor no soporta se lee como uno en inglés normal; el chip nombra el idioma solicitado junto al resuelto cuando ambos difieren. Ver Locales.
Uso como biblioteca
const { renderHtmlReport } = require('@surea11y/core/report');const { runDomRulesInPage } = require('@surea11y/core');const result = runDomRulesInPage(url, null, {}, null);const html = renderHtmlReport(result, { title: 'My scan report' });require('fs').writeFileSync('report.html', html);
renderHtmlReport(result, options) es una función pura: devuelve una cadena, nunca toca el sistema de archivos por sí misma (el flag --html de la CLI es el que escribe). options.title es opcional (por defecto "surea11y scan report").
Alcance
Esto es un informe de un solo análisis: una instantánea puntual, no un panel que siga resultados a lo largo de muchos análisis en el tiempo. Seguir resultados a lo largo de muchas ejecuciones es un asunto aparte, más amplio, y no forma parte de esta herramienta: conserva el JSON de cada análisis y compáralo tú mismo, o bien envía SARIF a un panel que ya se encargue del historial (ver Informe SARIF más abajo).