Gestione degli errori 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

Come risolvere gli errori che possono verificarsi con Axe DevTools per Web per Playwright

Not for use with personal data

La versione 4.3.0 e successive delle integrazioni Axe DevTools per Web utilizzano una nuova tecnica quando si chiama AxeBuilder.analyze(), che apre una nuova finestra alla fine di un'esecuzione. Molti dei problemi descritti in questo documento riguardano problemi comuni con questa tecnica e le loro potenziali soluzioni.

Uso di blocchi popup abilitati

I blocchi popup ci impediscono di aprire la nuova finestra quando si chiama AxeBuilder.analyze(). La configurazione predefinita per la maggior parte delle librerie di test automatici dovrebbe consentire i popup. Assicurati di non abilitare esplicitamente i blocchi popup, poiché potrebbero causare problemi durante l'esecuzione dei test.

AxeBuilder.setLegacyMode(legacy: boolean)

Se per qualche motivo non puoi eseguire la nuova tecnica AxeBuilder.analyze senza errori, axe fornisce un nuovo metodo concatenabile che ti consente di eseguire la versione legacy di AxeBuilder.analyze. Usando questo metodo, axe esclude problemi di accessibilità che possono verificarsi nei frame e negli iframe cross-domain.

note

AxeBuilder.setLegacyMode è deprecato e verrà rimosso nella versione 5.0. Si prega di segnalare eventuali errori che si possono verificare durante l'esecuzione di AxeBuilder.analyze in modo che possano essere risolti prima che la versione legacy venga rimossa.

Esempio

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()
})()