Java Playwright Fehlerbehebung

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

Fehlerbehebung bei üblichen Fehlern in der Axe DevTools für Web Java Playwright-Integration

Not for use with personal data

Dieses Dokument beschreibt Probleme, die bei der Verwendung der Java Playwright-Integration auftreten können. Für Fehlerbehebungstipps zu anderen Java-Integrationen siehe Java Fehlerbehebung

Ab Version 4.3.0 verwenden die axe-core-Integrationen eine neue Technik beim Aufruf von AxePlaywrightBuilder.analyze(), die am Ende eines Laufs ein neues Fenster öffnet. Viele der in diesem Dokument beschriebenen Probleme betreffen häufige Schwierigkeiten mit dieser Technik und deren möglichen Lösungen.

Aktivierte Popup-Blocker

Popup-Blocker verhindern das Öffnen des neuen Fensters beim Aufruf von AxePlaywrightBuilder.analyze(). Die Standardkonfiguration der meisten Automatisierungstest-Bibliotheken sollte Popups zulassen. Bitte stellen Sie sicher, dass Sie Pop-up-Blocker nicht explizit aktivieren, da dies beim Ausführen der Tests zu Problemen führen kann.

AxePlaywrightBuilder.setLegacyMode(boolean legacyMode)

Falls Sie aus irgendeinem Grund die neue AxePlaywrightBuilder.analyze-Technik nicht fehlerfrei ausführen können, bietet axe eine neue kaskadierbare Methode an, die es Ihnen ermöglicht, die Legacy-Version von AxePlaywrightBuilder.analyze auszuführen. Bei Verwendung dieser Methode schließt axe Zugänglichkeitsprobleme aus, die in cross-domain frames und iframes auftreten können.

note

AxePlaywrightBuilder.setLegacyMode ist veraltet und wird in Version 5.0 entfernt. Bitte melden Sie alle Fehler, die Sie beim Ausführen von AxePlaywrightBuilder.analyze haben, damit sie behoben werden können, bevor die Legacy-Version entfernt wird.

Beispiel

Das folgende Beispiel zeigt ein vollständiges Beispiel für die Verwendung der Java Playwright-Integration:

import com.deque.axecore.playwright.AxePlaywrightBuilder;
import com.deque.axecore.utility.axeresults.AxeResults;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.BrowserType;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;
import org.junit.Test;

public class MyPlaywrightTestSuite {

    @Test
    public void testMyWebPage() {
        Playwright playwright = Playwright.create();
        Browser browser = playwright.chromium()
                .launch(new BrowserType.LaunchOptions().setHeadless(true));
        Page page = browser.newPage();
        page.navigate("https://dequeuniversity.com/demo/mars/");

        AxePlaywrightBuilder axePlaywrightBuilder = new AxePlaywrightBuilder(page)
        // Set legacyMode
            .setLegacyMode(true);

        try {
            AxeResults axeResults = axePlaywrightBuilder.analyze();
            System.out.println(axeResults.getViolations());
        } catch (RuntimeException e) {
            // Do something with the error
        }
    }
}