Tratamento de Erros no 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

Como contornar erros comuns observados no Axe DevTools para Web no Puppeteer

Not for use with personal data

A versão 4.3.0 e superiores das integrações Axe DevTools para Web usam uma nova técnica ao chamar AxeDevToolsPuppeteer.analyze(), que abre uma nova janela ao final de uma execução. Muitos dos problemas descritos neste documento abordam problemas comuns com esta técnica e suas possíveis soluções.

Bloqueadores de Pop-up Ativados

Bloqueadores de pop-up nos impedem de abrir a nova janela ao chamar AxeDevToolsPuppeteer.analyze(). A configuração padrão para a maioria das bibliotecas de teste de automação deve permitir pop-ups. Certifique-se de não ativar bloqueadores de pop-up explicitamente, pois isso pode causar um problema ao executar os testes.

AxeDevToolsPuppeteer.setLegacyMode(legacy: boolean)

Se por algum motivo você não conseguir executar a nova técnica AxeDevToolsPuppeteer.analyze sem erros, o axe fornece um novo método encadeável que permite executar a versão legada de AxeDevToolsPuppeteer.analyze. Ao usar este método, o axe exclui problemas de acessibilidade que podem ocorrer em frames e iframes entre domínios.

note

AxeDevToolsPuppeteer.setLegacyMode está obsoleto e será removido na versão 5.0. Por favor, relate quaisquer erros que você possa encontrar ao executar AxeDevToolsPuppeteer.analyze para que possam ser corrigidos antes que a versão legada seja removida.

Exemplo

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