1. Aggiungi una nuova dipendenza per il pacchetto Java Watcher alla sezione delle dipendenze pom.xml (per Maven) (il pacchetto Java Watcher è disponibile su Maven Central):

    <dependencies>
    
    <!-- Add this dependency: -->
      <dependency>
         <groupId>com.deque.axe_core</groupId>
         <artifactId>watcher</artifactId>
         <version>4.0.0</version> <!-- Update this as needed -->
      </dependency>
    
    </dependencies>
  2. Aggiungi importazioni per Java Watcher al tuo codice di test:

    import com.deque.axe_core.commons.AxeWatcherOptions;
    import com.deque.axe_core.selenium.AxeWatcher;
    import com.deque.axe_core.selenium.AxeWatcherDriver;
  3. Aggiungi il codice di configurazione per Java Watcher, compreso il tuo API key personale e l'ID del progetto (entrambi memorizzati nell'ambiente per sicurezza e flessibilità):

    AxeWatcherOptions options =
        new AxeWatcherOptions()
            .setApiKey(System.getenv("ACCESSIBILITY_API_KEY"))
            .setProjectId(System.getenv("PROJECT_ID"));
    // Optional: uncomment and set SERVER_URL if using a regional, private cloud, or on-premises instance:
    // options.setServerUrl(System.getenv("SERVER_URL"));
    AxeWatcher watcher = new AxeWatcher(options);
    ChromeOptions chromeOptions = new ChromeOptions();
    chromeOptions = watcher.configure(chromeOptions);
    WebDriver wrappedDriver = watcher.wrapDriver(new ChromeDriver(chromeOptions));

    Questo frammento di codice crea una nuova istanza di WebDriver chiamata wrappedDriver che è necessario castare per utilizzare i metodi del controller axe.

    Assicurati di impostare ACCESSIBILITY_API_KEY e PROJECT_ID nel tuo ambiente con la tua chiave API personale (trovata nel tuo account axe, nella scheda **API KEYS**) e con il tuo ID progetto (mostrato in cima a queste istruzioni quando hai creato il tuo progetto o disponibile nella pagina Progetti selezionando **Configura progetto** sotto **Impostazioni**). Se la tua organizzazione utilizza una versione regionale, cloud privata o un'istanza Axe Developer Hub on-premises, imposta anche SERVER_URL all'URL base di quella istanza (ad esempio, https://axe-eu.deque.com); altrimenti, ometti SERVER_URL e verrà utilizzato il valore predefinito https://axe.deque.com.

  4. Alla fine della tua sessione di test, chiama flush():

    ((AxeWatcherDriver) wrappedDriver).axeWatcher().flush();

    Chiamare flush() indica che l'esecuzione del test è terminata e i risultati possono essere elaborati e presentati all'utente.