Fehlerbehandlung in Playwright

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

Wie man mit Fehlern umgeht, die bei Axe DevTools für Web für Playwright auftreten können

Not for use with personal data

Version 4.3.0 und höher der Axe DevTools für Web-Integrationen verwendet eine neue Technik beim Aufrufen von AxeBuilder.analyze(), die am Ende eines Durchlaufs ein neues Fenster öffnet. Viele der in diesem Dokument beschriebenen Probleme adressieren häufige Schwierigkeiten mit dieser Technik und deren mögliche Lösungen.

Popup-Blocker verhindern, dass wir beim Aufrufen von AxeBuilder.analyze() das neue Fenster öffnen können. Die Standardeinstellung der meisten Automatisierungstest-Bibliotheken sollte Popups erlauben. Bitte stellen Sie sicher, dass Sie Popup-Blocker nicht ausdrücklich aktivieren, um Probleme beim Ausführen der Tests zu vermeiden.

AxeBuilder.setLegacyMode(legacy: boolean)

Falls es Ihnen aus irgendeinem Grund nicht möglich ist, die neue AxeBuilder.analyze-Technik ohne Fehler auszuführen, bietet axe eine neue kaskadierbare Methode, die es Ihnen ermöglicht, die Legacy-Version von AxeBuilder.analyze auszuführen. Bei der Verwendung dieser Methode schließt axe Barrierefreiheitsprobleme aus, die in domainübergreifenden Frames und iframes auftreten können.

note

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

Beispiel

const { AxeDevToolsBuilder } = require('@axe-devtools/playwright')
const playwright = require('playwright')

;(async () => {
  const browser = await playwright.chromium.launch()
  const context = await browser.newContext()
  const page = await context.newPage()
  await page.goto('https://dequeuniversity.com/demo/mars/')

  try {
    const results = await new AxeDevToolsBuilder({ page }).setLegacyMode().analyze();
    console.log(results)
  } catch (e) {
    // do something with the error
  }
  await browser.close()
})()