Instruções para Java e Playwright
Configurando seus testes com Java e Playwright
-
Adicione uma nova dependência para o pacote Java Watcher à seção de dependências do seu
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.4.0</version> <!-- Update this as needed --> </dependency> </dependencies> -
Adicione os imports para o Java Watcher ao seu código de testes:
import com.deque.axe_core.commons.AxeWatcherOptions; import com.deque.axe_core.playwright.AxeWatcherPlaywright; import com.deque.axe_core.playwright.AxeWatcherPage; -
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")); AxeWatcherPlaywright watcher = new AxeWatcherPlaywright(options); BrowserType.LaunchPersistentContextOptions launchOptions = watcher.configure(new BrowserType.LaunchPersistentContextOptions()); // Watcher requires a persistent context. You must set headless explicitly on Playwright 1.49+: launchOptions.setHeadless(false); BrowserContext context = browserType.launchPersistentContext(userDataDir, launchOptions); AxeWatcherPage page = watcher.wrapPage(context.newPage());importantO Watcher requer um contexto persistente do Playwright. Ele não é compatível com lançamentos não persistentes
Browser. No Playwright Java 1.49 ou posterior, você também deve chamar explicitamentesetHeadless(false)(ousetHeadless(true)comsetChannel("chrome")ousetChannel("chromium")). O modo padrãochromium-headless-shellnão é suportado.Este trecho de código cria uma instância
AxeWatcherPageque envolve seuPagedo Playwright com testes de acessibilidade habilitados.Para capturar uma captura de tela sempre que violações forem encontradas, adicione
.setTakeScreenshots(true)ao seuAxeWatcherOptions. Para também salvar capturas de tela localmente, encadeie.setScreenshotDir("./axe-screenshots"). Veja Capturar Capturas de Tela de Violações para mais informações.Certifique-se de configurar
ACCESSIBILITY_API_KEYePROJECT_IDno seu ambiente com sua chave de API pessoal (encontrada na sua Conta Axe, aba **API KEYS**) e o ID do seu projeto (mostrado no topo destas instruções quando você criou seu projeto ou disponível na página de Projetos escolhendo **Configurar projeto** em **Configurações**). Se sua organização usar uma instância regional, nuvem privada ou local do Axe Developer Hub, também configureSERVER_URLcom a URL base dessa instância (por exemplo,https://axe-eu.deque.com); caso contrário, omitaSERVER_URLe o padrãohttps://axe.deque.comserá utilizado. -
No final da sua sessão de testes, chame
flush():page.axeWatcher().flush();Chamar
flush()indica que a execução do teste terminou, e os resultados podem ser processados e apresentados ao usuário.Para atribuir violações a testes específicos, chame
setTestContext()antes da lógica do seu teste:page.axeWatcher().setTestContext( "src/test/java/com/acme/LoginTest.java", java.util.Arrays.asList("LoginTest", "rejects bad password") );Veja Atribuindo Violações a Testes para mais informações.
