AxeWatcher-Klasse
Die Hauptklasse zur Integration von Axe-Accessibility-Tests in Selenium-Java-Test-Suites (verwenden Sie AxeWatcherPlaywright für Playwright)
Die AxeWatcher-Klasse ist die zentrale Komponente der Axe-Watcher Selenium Java-Integration, die es Ihnen ermöglicht, Accessibility-Tests einfach zu Ihren bestehenden End-to-End-Test-Suites hinzuzufügen. Diese Klasse bietet Methoden zur Konfiguration von Browseroptionen und zum Umhüllen von WebDriver-Instanzen, um während automatisierter Tests eine Barrierefreiheitsanalyse zu ermöglichen.
Bei der Integration in Ihr Test-Framework führt Axe Watcher Folgendes aus:
- Analysiert Webseiten automatisch auf Barrierefreiheitsprobleme, wenn Tests ausgeführt werden
- Analysiert Seiten bei Erkennung von DOM-Änderungen erneut
- Verknüpft Git-Commits mit den Barrierefreiheits-Ergebnissen
- Sendet Barrierefreiheits-Ergebnisse an den Axe Developer Hub zur Verfolgung und Analyse
Konstruktor
AxeWatcher(AxeWatcherOptions options)
Erstellt eine neue Instanz von AxeWatcher mit den angegebenen Optionen.
Parameter:
options- Die Konfigurationsoptionen für Axe Watcher
Beispiel:
AxeWatcherOptions options = new AxeWatcherOptions()
.setApiKey("your-api-key-here")
.setProjectId("your-project-ID-here")
.setServerUrl("https://axe.deque.com");
AxeWatcher watcher = new AxeWatcher(options);Methoden
configure(ChromeOptions chromeOptions)
Konfiguriert ChromeOptions, um Barrierefreiheitstests mit Axe Watcher zu ermöglichen.
Diese Methode muss vor der Erstellung einer ChromeDriver-Instanz aufgerufen werden.
Parameter:
chromeOptions- Die vorhandeneChromeOptions-Instanz zur Konfiguration
Rückgaben:
- Eine neue
ChromeOptions-Instanz mit angewendeter Axe-Watcher-Konfiguration
Ausnahme:
IllegalArgumentException- Wenn der Headless- oder Inkognito-Modus aktiviert ist (Axe Watcher unterstützt diese Modi nicht)
Beispiel:
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)
Verpackt eine ChromeDriver-Instanz, um die Funktionalität für Barrierefreiheitstests zu aktivieren.
Diese Methode muss aufgerufen werden, nachdem configure() zur Einrichtung von ChromeDriver verwendet wurde.
Parameter:
chromeDriver- DieChromeDriver-Instanz, die umhüllt werden soll
Rückgaben:
- Eine umhüllte
WebDriver-Instanz mit aktivierter Funktionalität für Barrierefreiheitstests
Ausnahme:
RuntimeException- Wennconfigure()vor dieser Methode nicht aufgerufen wurde
Beispiel:
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()
Aktiviert das Debug-Logging für Axe-Watcher-Operationen. Dies kann nützlich sein, um Probleme während der Testentwicklung zu beheben.
Rückgaben:
- Die aktuelle
AxeWatcher-Instanz für Method-Chaining
Beispiel:
AxeWatcherOptions options = new AxeWatcherOptions();
options.setApiKey("your-api-key-here");
options.setProjectId("your-project-id-here");
AxeWatcher watcher = new AxeWatcher(options).enableDebugLogger();Hinweise und Einschränkungen
- Axe Watcher unterstützt keinen vollständigen Headless-Modus. Verwenden Sie
--headless=newanstelle von--headless, wenn Sie im Headless-Modus arbeiten müssen. - Axe Watcher unterstützt keinen Inkognito-Modus.
- Sie müssen
configure()aufrufen, bevor Sie eineChromeDriver-Instanz erstellen. - Sie müssen
wrapDriver()aufrufen, nachdem dieChromeDriver-Instanz erstellt wurde. - Rufen Sie
flush()bei der Test-Teardown-Phase auf der umhüllten Treiber-axeWatcher()auf, um sicherzustellen, dass alle Ergebnisse an den Axe Developer Hub gesendet werden.
