Especificaciones del flujo de trabajo
El comando axe DevTools CLI spec
ejecuta una especificación de flujo de trabajo JSON o YAML/YML, que le permite automatizar la prueba de una colección de páginas web para detectar problemas de accesibilidad.
Formato de comando
axe spec
<archivo-de-especificaciones>
<directorio-de-salida>
[opciones]
Por ejemplo:
axe spec deque-workflow.json ./axe-reports --format csv
Archivo de especificaciones
Un archivo de especificaciones es un archivo JSON o YAML/YML que contiene una matriz de páginas web que se probarán y varias propiedades de configuración (como se menciona a continuación).
Propiedades utilizadas en un archivo de especificaciones
Aquí están las propiedades utilizadas con un archivo de especificaciones:
Propiedad | Tipo de dato | Descripción |
---|---|---|
projects |
array | Agrupa pruebas y flujos de trabajo. |
. metadata |
objeto | Proporciona datos personalizables para tu caso de uso. |
. name |
cadena | Nombre único del proyecto. |
. id |
cadena | Identificador único del proyecto. |
. globalActions |
array | (Opcional) La CLI de DevTools de hacha espera a que aparezcan determinados elementos en una página y los descarta. En el siguiente ejemplo, es necesario solucionar los mensajes de cookies y las ventanas emergentes de encuestas de usuarios antes de probar cada página. |
. pageList |
array | Lista de páginas |
.. name |
cadena | Nombre de la página |
.. url |
cadena | URL de la página |
.. actions |
array | (opcional) Ejecuta acciones una tras otra en la página que se está probando. Puede, por ejemplo, completar un formulario, navegar por una aplicación de una sola página y probar la aplicación en diferentes estados. En el siguiente ejemplo, el flujo de trabajo ingresa "axe" en la interfaz de búsqueda de Deque. La acción global cierra la ventana emergente de cookies. Para obtener una lista completa de acciones, consulte acciones del flujo de trabajo. |
Ejemplo de archivo JSON
A continuación se muestra un ejemplo de archivo de especificación JSON:
{
"projects": [
{
"metadata": {
"products": ["CLI"],
"environment": ["Prod"]
},
"name": "deque.com",
"id": "deque.com",
"globalActions": [
"dismiss modal \"#CybotCookiebotDialog\" with close button \"#CybotCookiebotDialogBodyButtonAccept\""
],
"pageList": [
{
"name": "Deque search",
"url": "https://www.deque.com/",
"actions": [
"type \"axe\" into element \"#searchform input\"",
"click element \"#searchform button\"",
"wait for element \".m-search-page\" to be found",
"analyze"
]
},
{
"name": "Axe Dashboard",
"url": "https://axe.deque.com/"
}
]
}
]
}
Ejemplo de archivo YAML/YML
projects:
- metadata:
products:
- CLI
environment:
- Prod
name: deque.com
id: deque.com
globalActions:
- >-
dismiss modal "#CybotCookiebotDialog" with close button
"#CybotCookiebotDialogBodyButtonAccept"
pageList:
- name: Deque search
url: https://www.deque.com/
actions:
- type "axe" into element "#searchform input"
- click element "#searchform button"
- wait for element ".m-search-page" to be found
- analyze
- name: Axe Dashboard
url: https://axe.deque.com/
Directorio de salida
El directorio de salida es donde axe DevTools CLI guarda sus resultados (como un archivo JSON).
El siguiente fragmento de código guarda los resultados JSON y los informes CSV en el directorio ./axe-results/
:
axe spec deque-workflow.json ./axe-results --format csv
Opciones
Las siguientes opciones están disponibles para axe spec
:
-c, --custom <ruta>
Especifica un conjunto de reglas personalizado para usar y anula el conjunto de reglas predeterminado.
--enlaces descendientes
Obtiene los enlaces de la página web y los agrega a los resultados. Requiere de la opción --verbose .
--habilitar-seguimiento <estado>
Permite enviar datos a la biblioteca de métricas.
--filter [type(s)]
Proporciona una lista de tipos de resultados para filtrar los resultados: aprobados, infracciones, incompletos, inaplicables. (La opción --format csv es requerida).
axe reporter ./axe-reports/json/ --format=csv --filter passes,inapplicable
-f, --format [valor]
Especifica el tipo o tipos de informe [html|junit|csv|html+junit+csv]. El valor predeterminado es html.
--fuente de la página
Añade la página HTML escaneada a los resultados del escaneo. Debes utilizar esta opción con la opción --verbose
.
--nombre-de-página <nombre>
Prueba una página específica de la matriz name
denominada pageList
en el archivo de especificaciones JSON.
--título-de-la-página
Obtiene el título de la página al escanear y lo agrega a los resultados del escaneo. Debes utilizar la opción --verbose
.
--remote-proxy <servidor proxy>
Utiliza un servidor proxy remoto.
--resume-from <nombre>
Ejecuta las pruebas solo después de que se llama a una página específica name
.
--url-escaneada
Agrega metadatos adicionales a los resultados detallados: la URL base donde se inició el escaneo y la URL del escaneo actual. Funciona únicamente con el navegador Chrome y requiere la opción --verbose
.
--set-distinct-id <distinct-id>
Cambia el valor del id único.
--set-tracking-url <url>
Cambia la URL donde se envían los datos de las métricas.
-t, --tags
Filtra el conjunto de reglas estándar por etiqueta.
--user-agent
Utiliza el agente de usuario del navegador especificado.
--validar
Verifica su archivo de especificaciones sin ejecutarlo.
-v, --verbose
Aumenta la salida para incluir información adicional, incluidos los resultados de axe y metadatos como el nombre de la herramienta de prueba, la versión y el entorno.
Para conocer otras opciones, consulte indicadores de configuración