Java Playwright Fehlerbehebung
In diesem Dokument werden Probleme beschrieben, die bei der Verwendung der Java Playwright-Integration auftreten können. Tipps zur Fehlerbehebung bei den anderen Java-Integrationen finden Sie unter Java-Fehlerbehebung
Version 4.3.0 und höher der Axe-Core-Integrationen verwenden beim Aufruf eine neue Technik, AxePlaywrightBuilder.analyze()
die am Ende eines Laufs ein neues Fenster öffnet. Viele der in diesem Dokument beschriebenen Probleme betreffen allgemeine Probleme mit dieser Technik und ihre möglichen Lösungen.
Aktivierte Popup-Blocker
Popupblocker verhindern das Öffnen eines neuen Fensters beim Aufruf AxePlaywrightBuilder.analyze()
. Die Standardkonfiguration für die meisten Bibliotheken für automatisierte Tests sollte Popups zulassen. Bitte stellen Sie sicher, dass Sie Popup-Blocker nicht explizit aktivieren, da dies beim Ausführen der Tests zu Problemen führen könnte.
AxePlaywrightBuilder.setLegacyMode(boolean legacyMode)
Wenn Sie die neue AxePlaywrightBuilder.analyze
Technik aus irgendeinem Grund nicht ohne Fehler ausführen können, bietet axe eine neue verkettbare Methode, mit der Sie die Legacy-Version von AxePlaywrightBuilder.analyze
ausführen können. Bei Verwendung dieser Methode schließt axe Zugänglichkeitsprobleme aus, die in domänenübergreifenden Frames und Iframes auftreten können.
AxePlaywrightBuilder.setLegacyMode
ist veraltet und wird in v5.0 entfernt. Bitte melden Sie etwaige Fehler, die beim Ausführen AxePlaywrightBuilder.analyze
auftreten, damit diese behoben werden können, bevor die Legacy-Version entfernt wird.
Beispiel
Das folgende Beispiel zeigt 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
}
}
}