Foutafhandeling in 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

Hoe om te gaan met veelvoorkomende fouten in Axe DevTools voor Web voor Puppeteer

Not for use with personal data

Versie 4.3.0 en hoger van de Axe DevTools voor Web-integraties gebruiken een nieuwe techniek bij het aanroepen van AxeDevToolsPuppeteer.analyze(), waarmee aan het einde van een run een nieuw venster wordt geopend. Veel van de problemen die in dit document worden beschreven, behandelen veelvoorkomende problemen met deze techniek en hun mogelijke oplossingen.

Het inschakelen van popupblockers

Popupblockers voorkomen dat we het nieuwe venster kunnen openen bij het aanroepen van AxeDevToolsPuppeteer.analyze(). De standaardconfiguratie voor de meeste automatiseringstestbibliotheken zou popups moeten toestaan. Zorg ervoor dat u niet expliciet popupblockers inschakelt, aangezien dit problemen kan veroorzaken tijdens het uitvoeren van de tests.

AxeDevToolsPuppeteer.setLegacyMode(legacy: boolean)

Als u om de een of andere reden de nieuwe AxeDevToolsPuppeteer.analyze-techniek zonder fouten niet kunt uitvoeren, biedt axe een nieuwe koppelbare methode die u in staat stelt de legacy-versie van AxeDevToolsPuppeteer.analyze uit te voeren. Bij het gebruik van deze methode sluit axe toegankelijkheidsproblemen uit die kunnen optreden in cross-domain frames en iframes.

note

AxeDevToolsPuppeteer.setLegacyMode is verouderd en zal worden verwijderd in versie 5.0. Meld eventuele fouten die u tegenkomt tijdens het uitvoeren van AxeDevToolsPuppeteer.analyze, zodat deze kunnen worden opgelost voordat de legacy-versie wordt verwijderd.

Voorbeeld

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