AxeWatcher-klasse
De hoofdklasse voor het integreren van axe toegankelijkheidstests in Selenium Java-testsuites
De AxeWatcher -klasse is de kerncomponent van de axe Watcher Selenium Java-integratie, waarmee u eenvoudig toegankelijkheidstests kunt toevoegen aan uw bestaande end-to-end testsuites. Deze klasse biedt methoden om browseropties te configureren en WebDriver instanties te omwikkelen om toegankelijkheidsanalyses tijdens geautomatiseerd testen mogelijk te maken.
Wanneer geïntegreerd in uw testframework, doet axe Watcher het volgende:
- Analyseert automatisch webpagina's op toegankelijkheidsproblemen tijdens het uitvoeren van tests
- Heranalyseert pagina's bij detectie van DOM-veranderingen
- Koppelt Git-commits aan toegankelijkheidsresultaten
- Stuurt toegankelijkheidsresultaten naar axe Developer Hub voor tracking en analyse
Constructor
AxeWatcher(AxeWatcherOptions options)
Creëert een nieuwe instantie van AxeWatcher met de gespecificeerde opties.
Parameters:
options- De configuratie-opties voor axe Watcher
Voorbeeld:
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)
Configureert ChromeOptions om toegankelijkheidstests mogelijk te maken met axe Watcher.
Deze methode moet worden aangeroepen voordat een ChromeDriver -instantie wordt gecreëerd.
Parameters:
chromeOptions- De bestaandeChromeOptions-instantie om te configureren
Retourneert:
- Een nieuwe
ChromeOptions-instantie met toegepaste axe Watcher-configuratie
Gooi:
IllegalArgumentException- Indien de modus voor headless of incognito is ingeschakeld (axe Watcher ondersteunt deze modi niet)
Voorbeeld:
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)
Omwikkelt een ChromeDriver -instantie om toegankelijkheidstestfunctionaliteit mogelijk te maken.
Deze methode moet worden aangeroepen nadat configure() is gebruikt om de ChromeDriverop te zetten.
Parameters:
chromeDriver- DeChromeDriver-instantie om te omwikkelen
Retourneert:
- Een omwikkelde
WebDriver-instantie met ingeschakelde toegankelijkheidstestfunctionaliteit
Gooi:
RuntimeException- Indienconfigure()niet werd aangeroepen voor deze methode
Voorbeeld:
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()
Schakelt debug-logboeken in voor acties van axe Watcher. Dit kan nuttig zijn voor het oplossen van problemen tijdens de testontwikkeling.
Retourneert:
- De huidige
AxeWatcher-instantie voor method chaining
Voorbeeld:
AxeWatcherOptions options = new AxeWatcherOptions();
options.setApiKey("your-api-key-here");
options.setProjectId("your-project-id-here");
AxeWatcher watcher = new AxeWatcher(options).enableDebugLogger();Opmerkingen en Beperkingen
- axe Watcher ondersteunt geen volledige hoofdloze modus. Gebruik
--headless=newin plaats van--headlessals u hoofdloze werking nodig heeft. - axe Watcher ondersteunt geen incognitomodus.
- U moet
configure()aanroepen voordat u eenChromeDriverinstantie maakt. - U moet
wrapDriver()aanroepen nadat u deChromeDriverinstantie heeft gemaakt. - Roep
flush()op de omhulde driver aanaxeWatcher()in uw testafbouw om te zorgen dat alle resultaten naar axe Developer Hub worden verzonden.
