AxeWatcher-Klasse

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Die Hauptklasse zur Integration von Axe-Accessibility-Tests in Selenium-Java-Test-Suites (verwenden Sie AxeWatcherPlaywright für Playwright)

Not for use with personal data

Die AxeWatcher-Klasse ist die Kernkomponente der Axe Watcher Selenium Java-Integration, die es Ihnen ermöglicht, Ihren bestehenden End-to-End-Test-Suites unkompliziert Barrierefreiheitstests hinzuzufügen. Diese Klasse bietet Methoden zur Konfiguration von Browser-Optionen und zur Einbindung von WebDriver-Instanzen, um Barrierefreiheitsanalysen während der automatisierten Tests zu ermöglichen.

configure() und wrapDriver() bieten jeweils eine Überladung pro Browser an: Übergeben Sie ChromeOptions und ChromeDriver, um in Chrome for Testing oder Chromium zu testen, oder EdgeOptions und EdgeDriver, um in Microsoft Edge zu testen. Microsoft Edge erfordert Watcher 4.5.1 oder höher und Selenium 4 oder höher.

Wenn Axe Watcher in Ihr Test-Framework integriert ist:

  • 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 die Ergebnisse der Barrierefreiheitstests an Axe Developer Hub zur Nachverfolgung 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.

important

Diese Methode muss vor der Erstellung einer ChromeDriver-Instanz aufgerufen werden.

Parameter:

  • chromeOptions - Die vorhandene ChromeOptions-Instanz zur Konfiguration

Rückgaben:

  • Eine neue ChromeOptions-Instanz mit angewendeter Axe Watcher-Konfiguration

Ausnahme:

  • IllegalArgumentException - Falls 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);

configure(EdgeOptions edgeOptions)

Konfiguriert EdgeOptions, um Barrierefreiheitstests mit Axe Watcher in Microsoft Edge zu ermöglichen.

important

Diese Methode muss aufgerufen werden, bevor eine EdgeDriver-Instanz erstellt wird. Microsoft Edge erfordert Selenium 4 oder höher.

Parameter:

  • edgeOptions - Die vorhandene EdgeOptions-Instanz zur Konfiguration

Rückgaben:

  • Eine neue EdgeOptions-Instanz mit angewendeter Axe Watcher-Konfiguration. Nur die Befehlszeilenargumente und der Binärpfad werden von der übergebenen Instanz übernommen, stellen Sie also sicher, dass Sie alle anderen Funktionen auf der zurückgegebenen Instanz einstellen, bevor Sie die EdgeDriver konstruieren.

Ausnahme:

  • IllegalArgumentException - Falls der Headless- oder Inkognito-Modus aktiviert ist (Axe Watcher unterstützt diese Modi nicht)
  • IllegalStateException - Wenn Ihr Projekt eine ältere Version von selenium-java als 4 verwendet. Selenium 3's EdgeOptions zielt auf den veralteten EdgeHTML-Browser ab, der von Axe Watcher nicht unterstützt wird.

Beispiel:

AxeWatcherOptions options = new AxeWatcherOptions();
options.setApiKey("your-api-key-here");
options.setProjectId("your-project-id-here");
AxeWatcher watcher = new AxeWatcher(options);

EdgeOptions edgeOptions = new EdgeOptions();
// configure() carries over the arguments and the binary path set here;
// set any other capabilities on the returned instance instead
edgeOptions.addArguments("--window-size=1280,720");
EdgeOptions configuredOptions = watcher.configure(edgeOptions);

// Now create EdgeDriver with the configured options
EdgeDriver driver = new EdgeDriver(configuredOptions);

wrapDriver(ChromeDriver chromeDriver)

Verpackt eine ChromeDriver-Instanz, um die Funktionalität für Barrierefreiheitstests zu aktivieren.

important

Diese Methode muss aufgerufen werden, nachdem configure() zur Einrichtung von ChromeDriver verwendet wurde.

Parameter:

  • chromeDriver - Die ChromeDriver-Instanz, die umhüllt werden soll

Rückgaben:

  • Eine umhüllte WebDriver-Instanz mit aktivierter Funktionalität für Barrierefreiheitstests

Ausnahme:

  • RuntimeException - Wenn configure() 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");

wrapDriver(EdgeDriver edgeDriver)

Umschließt eine EdgeDriver-Instanz, um die Funktionalität für Barrierefreiheitstests zu aktivieren.

important

Diese Methode muss aufgerufen werden, nachdem configure() zur Einrichtung von EdgeDriver verwendet wurde.

Parameter:

  • edgeDriver - Die EdgeDriver-Instanz, die umhüllt werden soll

Rückgaben:

  • Eine umhüllte WebDriver-Instanz mit aktivierter Funktionalität für Barrierefreiheitstests

Ausnahme:

  • RuntimeException - Wenn configure() 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);

EdgeOptions edgeOptions = watcher.configure(new EdgeOptions());
EdgeDriver edgeDriver = new EdgeDriver(edgeOptions);

// Wrap the EdgeDriver
WebDriver driver = watcher.wrapDriver(edgeDriver);

// Now use the wrapped driver for testing
driver.get("https://example.com");

enableDebugLogger()

Aktiviert das Debug-Logging für Axe Watcher-Operationen. Dies kann bei der Fehlersuche während der Testentwicklung nützlich sein.

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=new statt --headless, wenn Sie einen Headless-Betrieb benötigen.
  • Axe Watcher unterstützt den Inkognito-Modus nicht.
  • Sie müssen configure() aufrufen, bevor Sie eine ChromeDriver- oder EdgeDriver-Instanz erstellen.
  • Sie müssen wrapDriver() aufrufen, nachdem Sie die ChromeDriver- oder EdgeDriver-Instanz erstellt haben.
  • Microsoft Edge erfordert Watcher 4.5.1 oder höher und Selenium 4 oder höher. Der Chrome-Pfad (ChromeOptions/ChromeDriver, verwendet mit Chrome for Testing oder Chromium) wird ab Selenium 3.141.59 unterstützt.
  • Rufen Sie flush() auf dem umhüllten Treiber von axeWatcher() in Ihrem Test-Teardown auf, um sicherzustellen, dass alle Ergebnisse an Axe Developer Hub gesendet werden.

Siehe auch