Tratamento de Erros em Ruby

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

Resolução de problemas comuns encontrados ao usar o Axe DevTools para Web com Ruby

Not for use with personal data

Como contornar erros causados pelo Axe DevTools Ruby 4.3

A versão 4.3.0 e superior das integrações do Axe DevTools utiliza uma nova técnica ao analisar uma página, 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.

Driver Desatualizado

Um problema comum é ter um driver desatualizado. Para corrigir esse problema, certifique-se de que sua instalação local do geckodriver ou chromedriver está atualizada.

Uma mensagem de erro de exemplo para esse problema incluirá uma mensagem sobre switchToWindow. Por exemplo:

(node:17566) UnhandledPromiseRejectionWarning: Error: Malformed type for "handle" parameter of command switchToWindow
Expected: string
Actual: undefined

Bloqueadores de Pop-up Ativados

Bloqueadores de pop-up nos impedem de abrir uma nova janela ao analisar uma página. A configuração padrão para a maioria das bibliotecas de testes de automação deve permitir pop-ups. Por favor, certifique-se de não habilitar bloqueadores de pop-up explicitamente, pois isso pode causar problemas ao executar os testes.

Axe::Configuration.legacy_mode

Se por algum motivo você não conseguir analisar uma página sem erros, o axe fornece um novo método encadeável que permite executar o procedimento legado. Ao usar este método, o axe exclui problemas de acessibilidade que podem ocorrer em frames e iframes de domínio cruzado.

note

Axe::Configuration.legacy_mode está obsoleto e será removido na versão 5.0. Por favor, reporte quaisquer erros que você possa ter ao analisar uma página para que eles possam ser corrigidos antes que a versão legada seja removida.

Exemplo

require "axe/core"

def analyze_page
  ...
end
def open_page
  ...
end

webdriver = open_page
Axe::Configuration.instance.legacy_mode = true
results = analyze_page