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 principal de la integración de Axe Watcher Selenium Java, lo que te permite agregar fácilmente pruebas de accesibilidad a tus suites 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 resultados de accesibilidad a Axe Developer Hub 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 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 sin cabeza o de 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 sin cabeza. Usa
--headless=newen lugar de--headlesssi necesitas operación sin cabeza. - Axe Watcher no admite el modo de 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 desmontaje de prueba para asegurar que todos los resultados se envíen a Axe Developer Hub.
