Manipulação de Erros no 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

Como contornar erros que podem ocorrer com o Axe DevTools for Web para Playwright

Not for use with personal data

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

Bloqueadores de pop-ups habilitados

Os bloqueadores de pop-ups nos impedem de abrir a nova janela ao chamar AxeBuilder.analyze(). A configuração padrão para a maioria das bibliotecas de teste de automação deve permitir pop-ups. Certifique-se de que você não está habilitando bloqueadores de pop-ups explicitamente, o que pode causar um problema ao executar os testes.

AxeBuilder.setLegacyMode(legacy: boolean)

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

note

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

Exemplo

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