1. Voeg een nieuwe afhankelijkheid toe voor het Java Watcher-pakket aan uw pom.xml (voor Maven) afhankelijkhedengedeelte (het Java Watcher-pakket is beschikbaar op 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>
  2. Voeg imports voor Java Watcher toe aan uw testcode:

    import com.deque.axe_core.commons.AxeWatcherOptions;
    import com.deque.axe_core.playwright.AxeWatcherPlaywright;
    import com.deque.axe_core.playwright.AxeWatcherPage;
  3. Voeg setupcode toe voor Java Watcher, inclusief uw persoonlijke API-sleutel en project-ID (beide worden opgeslagen in de omgeving voor veiligheid en flexibiliteit):

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

    Watcher vereist een Playwright persistente context. Het is niet compatibel met niet-persistente Browser-lanceringen. In Playwright Java 1.49 of later moet u ook expliciet setHeadless(false) aanroepen (of setHeadless(true) met setChannel("chrome") of setChannel("chromium")). De standaard chromium-headless-shell-modus wordt niet ondersteund.

    Dit codefragment creƫert een AxeWatcherPage-instantie die uw Playwright Page met toegankelijkheidstests activeert.

    Om een screenshot te maken wanneer overtredingen worden gevonden, voeg .setTakeScreenshots(true) toe aan uw AxeWatcherOptions. Om ook screenshots lokaal op te slaan, koppel .setScreenshotDir("./axe-screenshots"). Zie Overtredingen screenshotten voor meer informatie.

    Zorg ervoor dat u ACCESSIBILITY_API_KEY en PROJECT_ID in uw omgeving instelt op uw persoonlijke API-sleutel (te vinden in uw axe-account, **API-SLEUTELS** tabblad) en uw project-ID (aangegeven bovenaan deze instructies toen u uw project maakte of beschikbaar op de projectenpagina door **Project configureren** te kiezen onder **Instellingen**). Als uw organisatie een regionale, private cloud of on-premises Axe Developer Hub-instance gebruikt, stel dan ook SERVER_URL in op de basis-URL van die instance (bijvoorbeeld https://axe-eu.deque.com); anders laat u SERVER_URL weg en wordt de standaard https://axe.deque.com gebruikt.

  4. Roep aan het einde van uw testsessie flush() aan:

    page.axeWatcher().flush();

    Door flush() aan te roepen geeft u aan dat de testuitvoering is voltooid en de resultaten kunnen worden verwerkt en aan de gebruiker gepresenteerd.

    Om overtredingen aan specifieke tests toe te wijzen, roept u setTestContext() aan voordat u uw testlogica uitvoert:

    page.axeWatcher().setTestContext(
        "src/test/java/com/acme/LoginTest.java",
        java.util.Arrays.asList("LoginTest", "rejects bad password")
    );

    Zie Overtredingen aan tests toewijzen voor meer informatie.