Referencia de la API de Python de axe-devtools-api
Referencia de la API para el paquete de Python axe-devtools-api para inyectar y ejecutar axe-core
Proporciona una API para inyectar y ejecutar axe-core en una página web.
axe_devtools_api.Axe
Configura cómo se ejecuta axe-core y lo ejecuta en la página.
report = Axe(page).with_rules("document-title", "label").analyze()Axe(page, report_configuration=None, axe_source=None)
Inicialice una instancia de Axe con un adaptador de navegador y una configuración opcional.
page: Un adaptador de navegador, como una instancia de AxeDriver de axe-devtools-selenium.
report_configuration: Opcional. Un objeto de configuración de informe.
axe_source: Opcional. Una cadena de código fuente de axe-core para usar en lugar de la versión integrada.
analyze()
Inyectar axe-core en la página y ejecutar el análisis de accesibilidad.
Devuelve un objeto Results. Consulte Generación de informes con Python para conocer el API completo Results y cómo configurar los metadatos del informe.
report = Axe(page).analyze()including(*selector)
Especifica parte de la página para que axe-core la analice. Para analizar varias partes no relacionadas de la página, llama a including() una vez por cada una, pasando un único selector cada vez.
selector: Un único selector CSS para los elementos a incluir. Pasar más de un selector en una sola llamada siempre se interpreta como un selector de iframe en lugar de inclusiones separadas: cada selector excepto el último coincide con un nivel de anidamiento de iframe, y el último coincide con el elemento a analizar dentro del iframe más interno.
Devuelve este objeto para encadenamiento.
# Analyze .sidebar and .some-class, which are both in the top-level document
report = Axe(page).including(".sidebar").including(".some-class").analyze()
# Analyze .some-class inside the iframe matched by .sidebar-frame
report = Axe(page).including(".sidebar-frame", ".some-class").analyze()excluding(*selector)
Especifica parte de la página para que axe-core la omita durante el análisis. Para omitir varias partes no relacionadas de la página, llama a excluding() una vez por cada una, pasando un único selector cada vez.
selector: Un único selector CSS para los elementos a excluir. Pasar más de un selector en una sola llamada siempre se interpreta como un selector de iframe en lugar de exclusiones separadas: cada selector excepto el último coincide con un nivel de anidamiento de iframe, y el último coincide con el elemento a omitir dentro del iframe más interno.
Devuelve este objeto para encadenamiento.
# Skip .third-party-ad and .cookie-banner, which are both in the top-level document
report = Axe(page).excluding(".third-party-ad").excluding(".cookie-banner").analyze()
# Skip .third-party-ad inside the iframe matched by .iframe1
report = Axe(page).excluding(".iframe1", ".third-party-ad").analyze()with_rules(*rules)
Especifique reglas (por ID) para que axe-core las ejecute. Solo se utilizan las reglas especificadas. Esta opción es incompatible con with_tags.
rules: Uno o más IDs de regla. Vea Descripciones de reglas para una lista de IDs válidos.
Devuelve este objeto para encadenamiento.
Genera RuntimeError si se llama junto con with_tags en la misma instancia.
report = Axe(page).with_rules("document-title", "label").analyze()with_tags(*tags)
Especifique reglas (por etiqueta) para que axe-core las ejecute. Solo se utilizan las reglas especificadas. Esta opción es incompatible con with_rules.
tags: Uno o más nombres de etiquetas. Vea etiquetas de axe-core para una lista de etiquetas válidas.
Devuelve este objeto para encadenamiento.
Genera RuntimeError si se llama junto con with_rules en la misma instancia.
report = Axe(page).with_tags("best-practice", "wcag2a").analyze()disabling_rules(*rules)
Deshabilite reglas específicas de la ejecución de axe-core.
rules: Uno o más IDs de regla.
Devuelve este objeto para encadenamiento.
report = Axe(page).disabling_rules("html-has-lang", "label").analyze()run_options(options)
Especifique runOptions para pasar a axe-core al llamar a axe.run.
options: Objeto de opciones para pasar a axe-core.
Devuelve este objeto para encadenamiento.
options = {"iframes": False}
report = Axe(page).run_options(options).analyze()configure(spec)
Configura axe-core a través de axe.configure.
spec: Objeto de especificación para pasar a axe.configure.
Devuelve este objeto para encadenamiento.
report = Axe(page).configure(spec).analyze()without_iframe_sandboxes()
Quita el atributo sandbox de los iframe para que axe-core pueda ejecutarse dentro de ellos.
Devuelve este objeto para encadenamiento.
report = Axe(page).without_iframe_sandboxes().analyze()with_config_file(config_path)
Establezca la ruta a un archivo de configuración de conjunto de reglas. La ruta predeterminada es config/axe-ruleset.json, o el valor de la variable de entorno $AXE_RULESET_PATH si está configurada.
config_path: Ruta al archivo de configuración.
Devuelve este objeto para encadenamiento.
report = Axe(page).with_config_file("path/to/file.json").analyze()with_ruleset(ruleset_id, enable_best_practices=False)
Usa un conjunto de reglas específico para la ejecución de axe-core.
ruleset_id: ID del conjunto de reglas a usar. Conjuntos de reglas disponibles: wcag2, wcag2.1, wcag2.2, wcag2aaa, wcag2.1aaa, wcag2.2aaa, 508, en301549, ttv5, rgaav4.
enable_best_practices: Si se deben habilitar las reglas etiquetadas best-practice. Por defecto es False.
Devuelve este objeto para encadenamiento.
report = Axe(page).with_ruleset("508").analyze()set_legacy_mode(state=True)
Use axe.run en lugar de axe.runPartial. Tiene implicaciones de origen cruzado.
state: Si se debe habilitar el modo heredado. Por defecto es True.
Devuelve este objeto para encadenamiento.
report = Axe(page).set_legacy_mode().analyze()Servicio de uso
Obtén información sobre las tendencias de uso de Axe DevTools dentro de tu organización. Por defecto, el servicio de uso está habilitado y reporta a https://usage.deque.com. Establece la variable de entorno AXE_TRACK_USAGE en false para deshabilitarlo.
Variables de entorno del servicio de uso
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). En Ruby, esta variable se llama DEQUE_DISTINCT_ID. |
AXE_INCLUDE_TEST_RESULTS |
Booleano | — | Configúrelo en true para incluir los resultados completos de axe-core en el objeto testResults de cada evento (el valor predeterminado es false). Compatible solo con el CLI y las API de Node.js. |
AXE_METRICS_URL |
Cadena | — | La URL del punto final de uso de REST (el valor predeterminado es https://usage.deque.com) |
AXE_TRACK_USAGE |
Booleano | — | Configúrelo en false para desactivar la generación de informes del servicio de uso. El informe está habilitado de forma predeterminada. |
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. Para que su uso aparezca en Axe Reports, configúrelo con el ID de su organización (contacte a Deque para obtenerlo). |
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 una dirección de correo electrónico, nombre o ID de inicio de sesión. Axe Reports cuenta usuarios únicos a partir de este valor. |
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 |
enable_tracking(state)
Opta por enviar o no datos al servicio de uso. El envío está habilitado por defecto.
state: Si el seguimiento está habilitado.
Devuelve este objeto para encadenamiento.
report = Axe(page).enable_tracking(True).analyze()set_tracking_url(url)
Establecer dónde se envían los datos de métricas de uso.
url: URL donde se enviarán los datos.
Devuelve este objeto para encadenamiento.
report = Axe(page).set_tracking_url("https://usage.deque.com").analyze()set_distinct_id(id)
Establecer el ID distinto utilizado al enviar métricas de uso.
id: ID distintivo para enviar.
Devuelve este objeto para encadenamiento.
report = Axe(page).set_distinct_id("SOMEUUID").analyze()