Tratamento de Erros em C#

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

Solução de problemas comuns encontrados ao usar o Axe DevTools para Web em C#

Not for use with personal data

A versão 4.3.0 e posteriores das integrações do axe-core utilizam uma nova técnica ao chamar AxeSelenium.run(), 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 soluções potenciais.

Driver Desatualizado

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

Uma mensagem de erro exemplo para este problema incluirá uma mensagem sobre switchToWindow.

Exemplo:

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

Bloqueadores de Popup Ativados

Bloqueadores de popup nos impedem de abrir a nova janela ao chamar AxeSelenium::run. A configuração padrão da maioria das bibliotecas de testes de automação deve permitir popups. Por favor, certifique-se de não ativar explicitamente bloqueadores de popup que possam causar problemas durante a execução dos testes.

AxeSelenium::useLegacyMode(boolean legacy)

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

note

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

Exemplo

using Deque.AxeDevtools.Selenium;
using OpenQA.Selenium.Chrome;

public class Program
{
    static void Main(string[] args)
    {
        // open webdriver and go to test page
        var webDriver = new ChromeDriver();
        webDriver.Navigate().GoToUrl("http://www.testurl.com/");

        // enable legacy mode and analyze
        var results = new AxeSelenium(webDriver)
            .UseLegacyMode(true)
            .Analyze();
    }
}