1. Adicione uma nova dependência para o pacote Java Watcher à sua seção de dependências pom.xml (para Maven) (o pacote Java Watcher está disponível no 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. Adicione as importações para o Java Watcher ao seu código de teste:

    import com.deque.axe_core.commons.AxeWatcherOptions;
    import com.deque.axe_core.selenium.AxeWatcher;
    import com.deque.axe_core.selenium.AxeWatcherDriver;
  3. Adicione o código de configuração para o Java Watcher, incluindo sua chave de API pessoal e ID do projeto (ambos armazenados no ambiente para segurança e flexibilidade):

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

    Este trecho de código cria uma nova instância WebDriver chamada wrappedDriver que você precisa fazer cast para usar os métodos do controlador de axe.

    Certifique-se de definir ACCESSIBILITY_API_KEY e PROJECT_ID no seu ambiente para a sua chave API pessoal (encontrada na sua conta axe, aba **API KEYS**) e para o ID do seu projeto (mostrado na parte superior destas instruções quando você criou o seu projeto ou disponível na página Projetos ao escolher **Configurar projeto** em **Configurações**). Se a sua organização usa uma instância regional, em nuvem privada ou local do Axe Developer Hub, também defina SERVER_URL para a URL base dessa instância (por exemplo, https://axe-eu.deque.com); caso contrário, omita SERVER_URL e o padrão https://axe.deque.com será utilizado.

  4. No final da sua sessão de teste, chame flush():

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

    Chamar flush() indica que a execução do teste foi concluída e os resultados podem ser processados e apresentados ao usuário.