Referencia de la API de Cypress para Axe DevTools para Web
Referencia para las APIs en el paquete @axe-devtools/cypress
Comandos Encadenables de Cypress (análisis)
cy.axeAnalyze()
Este comando encadenable inyecta axe en todas las páginas e iframes y luego ejecuta axe en la página.
| Parámetro | Tipo | Valor Predeterminado | Descripción |
|---|---|---|---|
| nombre (opcional) | Cadena de texto | indefinido | Establece el identificador para este resultado de escaneo almacenado en el informe. Si no se proporciona, se utiliza una marca de tiempo por defecto. |
| contexto (opcional) | axe.ElementContext | indefinido | Define el ámbito del análisis—la parte del DOM que desea analizar. Generalmente será el documento o un selector específico como nombre de clase, ID, selector, etc. |
| opciones (opcional) | axe.RunOptions | indefinido | Conjunto de opciones pasadas a reglas o verificaciones, modificándolas temporalmente. Esto contrasta con axe.configure, que es más permanente. |
| log (opcional) | Booleano | falso | Devuelve salida a stdout con el número de elementos que no son accesibles e impactos de violación como una tabla. |
cy.isAxeClean()
Este comando encadenable es una afirmación de que la página no tiene violaciones de accesibilidad.
Parámetros:
| Parámetro | Tipo | Valor Predeterminado | Descripción |
|---|---|---|---|
| contexto (opcional) | axe.ElementContext | indefinido | Define el ámbito del análisis—la parte del DOM que desea analizar. Generalmente será el documento o un selector específico como nombre de clase, ID, selector, etc. |
| opciones (opcional) | axe.RunOptions | indefinido | Conjunto de opciones pasadas a reglas o verificaciones, modificándolas temporalmente. Esto contrasta con axe.configure, que es más permanente. |
Comandos Encadenables de Cypress (configuración)
Integre Axe DevTools para Web con Cypress usando comandos encadenables personalizados de Cypress para configurar los resultados analizados.
cy.setAxeSource()
Este comando encadenable establece la versión de axe-core.
| Parámetro | Tipo | Valor Predeterminado | Descripción |
|---|---|---|---|
| Ruta del archivo (obligatorio) | Cadena | nulo | Ruta relativa a la raíz del proyecto que debe incluir axe.source o versión minificada de axe-core. |
cy.setAxeCustom()
Este comando encadenable permite el uso de conjuntos de reglas personalizados.
- Axe DevTools para Web Cypress también leerá implícitamente
axe-ruleset.jsoncuando se coloque en el nivel raíz del proyecto o también usará archivos de conjuntos de reglas personalizados cuando laAXE_RULESET_PATHvariable de entorno esté establecida.
| Parámetro | Tipo | Valor Por Defecto | Descripción |
|---|---|---|---|
| Ruta del archivo (obligatorio) | Cadena | nulo | Ruta relativa a la raíz del proyecto que debe incluir verificaciones y reglas |
cy.setAxeRuleset()
Este comando encadenable permite a los usuarios ejecutar reglas por etiquetas, similar a configurar axe.run().
| Parámetro | Tipo | Valor Por Defecto | Descripción |
|---|---|---|---|
| conjunto de reglas (obligatorio) | '508', 'en301549', 'rgaav4', 'ttv5', 'wcag2', 'wcag2.1', 'wcag2.2', 'wcag2aaa', 'wcag2.1aaa', 'wcag2.2aaa' | 'wcag2.1' | Array de etiquetas a las que se asigna esta regla. |
cy.setAxeReportName()
Este comando encadenable permite a los usuarios establecer el nombre del archivo de reporte.
| Parámetro | Tipo | Valor Por Defecto | Descripción |
|---|---|---|---|
| nombreReporte (obligatorio) | Cadena | @axe-devtools-cypress | Nombre del archivo de reporte. |
cy.getAxeResults()
Este comando encadenable permite a los usuarios utilizar los resultados después de ejecutar cy.axeAnalyze().
Las respuestas de getAxeResults() devuelven la estructura de datos axe.AxeResults.
Ejemplo:
after(() => {
cy.axeAnalyze();
cy.getAxeResults().then(data => {
cy.writeFile('./results.json', data)
})
})cy.getUniversalResults()
Este comando encadenable devuelve los resultados de la llamada más reciente a cy.axeAnalyze() en el Formato Universal de Axe. Devuelve null si aún no se ha realizado ningún análisis.
Ejemplo:
after(() => {
cy.axeAnalyze();
cy.getUniversalResults().then(data => {
cy.writeFile('./results-universal.json', data)
})
})Servicio de Uso
El servicio de uso le permite obtener información sobre las tendencias de uso de Axe DevTools para Web dentro de su organización.
Variables de Entorno
Estas variables de entorno le permiten configurar el servicio de uso y cambiar las propiedades de los eventos reportados.
| Nombre | Tipo | Puede sobrescribir | Descripción |
|---|---|---|---|
AXE_DISTINCT_ID |
Cadena | — | Un identificador UUID que permanece igual para el usuario registrado (a menos que se regenere) |
AXE_METRICS_URL |
Cadena | — | La URL del punto final de uso de REST |
AXE_TRACK_USAGE |
Booleano | — | Habilita la generación de informes del servicio de uso (el valor predeterminado es false) |
AXE_APPLICATION |
Cadena | falso | La aplicación que se utilizó para verificar errores de accesibilidad |
AXE_DEV_INSTANCE |
Booleano | verdadero | Indica si este evento es producto de las acciones de un desarrollador de software. Útil para marcar y luego eliminar eventos registrados durante el desarrollo o las pruebas. |
AXE_DEPARTMENT |
Cadena | verdadero | El departamento del usuario dentro de la organización |
AXE_KEYCLOAK_ID |
Cadena | falso | El ID de Keycloak del usuario |
AXE_LOGGED_IN |
Booleano | falso | Registra si el usuario está conectado a la aplicación bajo prueba |
AXE_ORGANIZATION |
Cadena | verdadero | La organización del usuario |
AXE_SESSION_ID |
Cadena | falso | Un UUID que identifica la sesión del usuario |
AXE_USER_ID |
Cadena | falso | La identidad específica de un usuario, como su nombre o ID de inicio de sesión |
AXE_USER_JOB_ROLE |
Cadena | falso | El rol laboral del usuario |
AXE_USER_STATUS |
Cadena | falso | Información de estado que desea asociar con el usuario |
cy.task('enableTracking', <boolean>)
Esta tarea de cypress permite a los usuarios optar por enviar datos al servicio de uso.
cy.task('setTrackingUrl', <string>)
Esta tarea de cypress permite a los usuarios cambiar el destino al que se envían los datos de métricas de uso.
cy.task('setDistinctId', <string>)
Esta tarea de cypress permite a los usuarios cambiar el id distinto que se almacena o se utiliza.
Próximos Pasos
Si tiene algún problema al instalar Axe DevTools para Web, contacte directamente a su representante de Deque, pregúntenos a través de nuestro servicio de soporte, o envíenos un correo electrónico. Estaremos encantados de ayudarle a empezar.
