Gestion des erreurs dans Puppeteer

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 courantes observées dans axe DevTools pour Puppeteer

Not for use with personal data

La version 4.3.0 et supérieure de axe DevTools pour les intégrations Web utilise une nouvelle technique lors de l'appel AxeDevToolsPuppeteer.analyze() qui ouvre une nouvelle fenêtre à la fin d'une exécution. La plupart des points décrits dans ce document abordent les problèmes courants liés à cette technique et leurs solutions potentielles.

Avoir les bloqueurs de pop-up activés

Les bloqueurs de popups nous empêchent d'ouvrir la nouvelle fenêtre lors de l'appel AxeDevToolsPuppeteer.analyze(). La configuration par défaut de la plupart des bibliothèques de tests d'automatisation doit autoriser les fenêtres contextuelles. Assurez-vous de ne pas activer explicitement les bloqueurs de fenêtres contextuelles, ce qui peut entraîner un problème lors de l'exécution des tests.

AxeDevToolsPuppeteer.setLegacyMode(legacy: boolean)

Si pour une raison quelconque vous ne pouvez pas exécuter la nouvelle AxeDevToolsPuppeteer.analyze technique sans erreurs, axe fournit une nouvelle méthode chaînable qui vous permet d'exécuter la version précédente de AxeDevToolsPuppeteer.analyze. Lorsque vous utilisez cette méthode, axe exclut les problèmes d'accessibilité qui peuvent survenir dans les cadres et les iframes inter-domaines.

note

AxeDevToolsPuppeteer.setLegacyMode est obsolète et sera supprimé dans la version 5.0. Veuillez signaler toute erreur que vous pourriez rencontrer lors de l'exécution AxeDevToolsPuppeteer.analyze afin qu'elles puissent être corrigées avant la suppression de la version précédente.

Exemple

const { AxeDevToolsPuppeteer } = require('@axe-devtools/puppeteer');
const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.setBypassCSP(true);

  await page.goto('https://dequeuniversity.com/demo/mars/');

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