Manejo de Errores en 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

Solucionando errores comunes al usar Axe DevTools para Web en C#

Not for use with personal data

La versión 4.3.0 y superiores de las integraciones axe-core utilizan una nueva técnica al llamar a AxeSelenium.run() que abre una nueva ventana al final de una ejecución. Muchos de los problemas descritos en este documento abordan problemas comunes con esta técnica y sus posibles soluciones.

Tener un Controlador Desactualizado

Un problema común es tener un controlador desactualizado. Para solucionar este problema, asegúrese de que su instalación local de geckodriver o chromedriver esté actualizada.

Un mensaje de error de ejemplo para este problema incluirá un mensaje sobre switchToWindow.

Ejemplo:

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

Tener Bloqueadores de Ventanas Emergentes Activados

Los bloqueadores de ventanas emergentes nos impiden abrir la nueva ventana al llamar a AxeSelenium::run. La configuración predeterminada para la mayoría de las bibliotecas de pruebas de automatización debería permitir ventanas emergentes. Asegúrese de no habilitar explícitamente bloqueadores de ventanas emergentes que puedan causar un problema al ejecutar las pruebas.

AxeSelenium::useLegacyMode(boolean legacy)

Si por alguna razón no puede ejecutar la nueva técnica AxeSelenium::run sin errores, axe proporciona un nuevo método encadenable que le permite ejecutar la versión antigua de AxeSelenium::run. Al usar este método, axe excluye problemas de accesibilidad que pueden ocurrir en marcos cruzados de dominio y iframes.

note

AxeSelenium::useLegacyMode está en desuso y se eliminará en la versión 5.0. Por favor, informe cualquier error que pueda tener al ejecutar AxeSelenium::run para que puedan ser corregidos antes de que se elimine la versión antigua.

Ejemplo

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