Gestion des erreurs dans 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

Comment contourner les erreurs susceptibles de survenir avec Axe DevTools for Web pour Playwright

Not for use with personal data

Les versions 4.3.0 et supérieures des intégrations Axe DevTools for Web utilisent une nouvelle technique lors de l'appel à AxeBuilder.analyze() qui ouvre une nouvelle fenêtre à la fin d'une exécution. De nombreux problèmes décrits dans ce document abordent les problèmes courants liés à cette technique et leurs solutions potentielles.

Activer les bloqueurs de pop-up

Les bloqueurs de pop-up nous empêchent d'ouvrir la nouvelle fenêtre lors de l'appel à AxeBuilder.analyze(). La configuration par défaut de la plupart des bibliothèques de tests automatisés devrait autoriser les pop-up. Veuillez vous assurer que vous n'avez pas explicitement activé les bloqueurs de pop-up, ce qui pourrait poser un problème lors de l'exécution des tests.

AxeBuilder.setLegacyMode(legacy: boolean)

Si, pour une raison quelconque, vous n'êtes pas en mesure d'exécuter la nouvelle technique AxeBuilder.analyze sans erreurs, axe fournit une nouvelle méthode chaînable qui vous permet d'exécuter la version héritée de AxeBuilder.analyze. Lors de l'utilisation de cette méthode, axe exclut les problèmes d'accessibilité susceptibles de survenir dans les cadres croisés et les iframes.

note

AxeBuilder.setLegacyMode est obsolète et sera supprimé dans la version 5.0. Veuillez signaler toutes les erreurs que vous pourriez rencontrer lors de l'exécution de AxeBuilder.analyze afin qu'elles puissent être corrigées avant la suppression de la version héritée.

Exemple

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