Clase AxeWatcher
La clase principal para integrar las pruebas de accesibilidad de axe en los conjuntos de pruebas de Selenium Java (use AxeWatcherPlaywright para Playwright)
La clase AxeWatcher es el componente central de la integración de axe Watcher con Selenium Java, que te permite agregar fácilmente pruebas de accesibilidad a tus conjuntos de pruebas de extremo a extremo existentes. Esta clase proporciona métodos para configurar opciones del navegador y envolver instancias de WebDriver para habilitar el análisis de accesibilidad durante las pruebas automatizadas.
Cuando se integra en tu marco de pruebas, axe Watcher:
- Analiza automáticamente las páginas web en busca de problemas de accesibilidad cuando se ejecutan las pruebas
- Reanaliza las páginas al detectar cambios en el DOM
- Vincula los commits de Git a los resultados de accesibilidad
- Envía los resultados de accesibilidad al Hub del Desarrollador de axe para seguimiento y análisis
Constructor
AxeWatcher(AxeWatcherOptions options)
Crea una nueva instancia de AxeWatcher con las opciones especificadas.
Parámetros:
options- Las opciones de configuración para axe Watcher
Ejemplo:
AxeWatcherOptions options = new AxeWatcherOptions()
.setApiKey("your-api-key-here")
.setProjectId("your-project-ID-here")
.setServerUrl("https://axe.deque.com");
AxeWatcher watcher = new AxeWatcher(options);Métodos
configure(ChromeOptions chromeOptions)
Configura ChromeOptions para habilitar las pruebas de accesibilidad con axe Watcher.
Este método debe llamarse antes de crear una instancia de ChromeDriver.
Parámetros:
chromeOptions- La instancia existente deChromeOptionsa configurar
Devuelve:
- Una nueva instancia de
ChromeOptionscon la configuración de axe Watcher aplicada
Lanza excepción:
IllegalArgumentException- Si el modo headless o incógnito está habilitado (axe Watcher no admite estos modos)
Ejemplo:
AxeWatcherOptions options = new AxeWatcherOptions();
options.setApiKey("your-api-key-here");
options.setProjectId("your-project-id-here");
AxeWatcher watcher = new AxeWatcher(options);
ChromeOptions chromeOptions = new ChromeOptions();
// Add any additional Chrome options here
ChromeOptions configuredOptions = watcher.configure(chromeOptions);
// Now create ChromeDriver with the configured options
ChromeDriver driver = new ChromeDriver(configuredOptions);wrapDriver(ChromeDriver chromeDriver)
Envuelve una instancia de ChromeDriver para habilitar la funcionalidad de pruebas de accesibilidad.
Este método debe llamarse después de que configure() haya sido utilizado para configurar el ChromeDriver.
Parámetros:
chromeDriver- La instancia deChromeDrivera envolver
Devuelve:
- Una instancia de
WebDriverenvuelta con la funcionalidad de pruebas de accesibilidad habilitada
Lanza excepción:
RuntimeException- Siconfigure()no fue llamado antes de este método
Ejemplo:
AxeWatcherOptions options = new AxeWatcherOptions();
options.setApiKey("your-api-key-here");
options.setProjectId("your-project-id-here");
AxeWatcher watcher = new AxeWatcher(options);
ChromeOptions chromeOptions = watcher.configure(new ChromeOptions());
ChromeDriver chromeDriver = new ChromeDriver(chromeOptions);
// Wrap the ChromeDriver
WebDriver driver = watcher.wrapDriver(chromeDriver);
// Now use the wrapped driver for testing
driver.get("https://example.com");enableDebugLogger()
Habilita el registro de depuración para las operaciones de axe Watcher. Esto puede ser útil para solucionar problemas durante el desarrollo de pruebas.
Devuelve:
- La instancia actual de
AxeWatcherpara encadenamiento de métodos
Ejemplo:
AxeWatcherOptions options = new AxeWatcherOptions();
options.setApiKey("your-api-key-here");
options.setProjectId("your-project-id-here");
AxeWatcher watcher = new AxeWatcher(options).enableDebugLogger();Notas y Limitaciones
- axe Watcher no admite el modo completamente headless. Use
--headless=newen lugar de--headlesssi necesita operación en modo headless. - axe Watcher no admite el modo incógnito.
- Debes llamar a
configure()antes de crear una instancia deChromeDriver. - Debes llamar a
wrapDriver()después de crear la instancia deChromeDriver. - Llama a
flush()en elaxeWatcher()del controlador envuelto en tu desmantelamiento de pruebas para asegurar que todos los resultados se envían al Hub del Desarrollador de axe.
