Classe AxeWatcher

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

La classe principale per integrare i test di accessibilità axe nelle suite di test Java di Selenium (utilizzare AxeWatcherPlaywright per Playwright)

Not for use with personal data

La classe AxeWatcher è il componente principale dell'integrazione Axe Watcher Selenium Java, che ti permette di aggiungere facilmente il test di accessibilità ai tuoi suite di test end-to-end esistenti. Questa classe fornisce metodi per configurare le opzioni del browser e avvolgere le istanze WebDriver per abilitare l'analisi dell'accessibilità durante i test automatici.

configure() e wrapDriver() forniscono ciascuno un overload per browser: passa ChromeOptions e ChromeDriver per testare in Chrome for Testing o Chromium, oppure EdgeOptions e EdgeDriver per testare in Microsoft Edge. Microsoft Edge richiede Watcher 4.5.1 o successivo e Selenium 4 o successivo.

Quando è integrato nel tuo framework di test, Axe Watcher:

  • Analizza automaticamente le pagine web per problemi di accessibilità quando i test vengono eseguiti
  • Ri-analizza le pagine al rilevamento di modifiche al DOM
  • Collega i commit di Git ai risultati di accessibilità
  • Invia i risultati dell'accessibilità a Axe Developer Hub per il monitoraggio e l'analisi

Costruttore

AxeWatcher(AxeWatcherOptions options)

Crea una nuova istanza di AxeWatcher con le opzioni specificate.

Parametri:

  • options - Le opzioni di configurazione per Axe Watcher

Esempio:

AxeWatcherOptions options = new AxeWatcherOptions()
    .setApiKey("your-api-key-here")
    .setProjectId("your-project-ID-here")
    .setServerUrl("https://axe.deque.com");

AxeWatcher watcher = new AxeWatcher(options);

Metodi

configure(ChromeOptions chromeOptions)

Configura ChromeOptions per abilitare il test di accessibilità con Axe Watcher.

important

Questo metodo deve essere chiamato prima di creare un'istanza di ChromeDriver.

Parametri:

  • chromeOptions - L'istanza ChromeOptions esistente da configurare

Restituisce:

  • Una nuova istanza ChromeOptions con la configurazione di Axe Watcher applicata

Lancia:

  • IllegalArgumentException - Se la modalità headless o incognito è abilitata (Axe Watcher non supporta queste modalità)

Esempio:

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)

Configura EdgeOptions per abilitare i test di accessibilità con Axe Watcher in Microsoft Edge.

important

Questo metodo deve essere chiamato prima di creare un'istanza di EdgeDriver. Microsoft Edge richiede Selenium 4 o successivo.

Parametri:

  • edgeOptions - L'istanza EdgeOptions esistente da configurare

Restituisce:

  • Una nuova istanza di EdgeOptions con configurazione Axe Watcher applicata. Solo gli argomenti da riga di comando e il percorso binario vengono trasferiti dall'istanza che passi, quindi imposta tutte le altre capacità sull'istanza restituita prima di costruire il EdgeDriver.

Lancia:

  • IllegalArgumentException - Se la modalità headless o incognito è abilitata (Axe Watcher non supporta queste modalità)
  • IllegalStateException - Se il tuo progetto utilizza una versione di selenium-java precedente alla 4. Il EdgeOptions di Selenium 3 è destinato al browser legacy EdgeHTML, che Axe Watcher non supporta.

Esempio:

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)

Avvolge un'istanza ChromeDriver per abilitare le funzionalità di test di accessibilità.

important

Questo metodo deve essere chiamato dopo che configure() è stato usato per configurare ChromeDriver.

Parametri:

  • chromeDriver - L'istanza ChromeDriver da avvolgere

Restituisce:

  • Un'istanza WebDriver avvolta con funzionalità di test di accessibilità abilitate

Lancia:

  • RuntimeException - Se configure() non è stato chiamato prima di questo metodo

Esempio:

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)

Avvolge un'istanza di EdgeDriver per abilitare la funzionalità di test di accessibilità.

important

Questo metodo deve essere chiamato dopo che configure() è stato usato per configurare EdgeDriver.

Parametri:

  • edgeDriver - L'istanza EdgeDriver da avvolgere

Restituisce:

  • Un'istanza WebDriver avvolta con funzionalità di test di accessibilità abilitate

Lancia:

  • RuntimeException - Se configure() non è stato chiamato prima di questo metodo

Esempio:

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()

Abilita il logging di debug per le operazioni di Axe Watcher. Questo può essere utile per risolvere problemi durante lo sviluppo dei test.

Restituisce:

  • L'istanza attuale di AxeWatcher per concatenare metodi

Esempio:

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

Note e Limitazioni

  • Axe Watcher non supporta la modalità completamente headless. Usa --headless=new invece di --headless se hai bisogno di modalità headless.
  • Axe Watcher non supporta la modalità incognito.
  • Devi chiamare configure() prima di creare un'istanza di ChromeDriver o EdgeDriver.
  • Devi chiamare wrapDriver() dopo aver creato l'istanza di ChromeDriver o EdgeDriver.
  • Microsoft Edge richiede Watcher 4.5.1 o successivo e Selenium 4 o successivo. Il percorso di Chrome (ChromeOptions/ChromeDriver, usato con Chrome for Testing o Chromium) è supportato su Selenium 3.141.59 o successivo.
  • Chiama flush() sul axeWatcher() del driver avvolto nel tuo teardown del test per assicurarti che tutti i risultati siano inviati a Axe Developer Hub.

Vedi anche