Gestion des erreurs 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

Dépannage des erreurs courantes rencontrées lors de l'utilisation d'Axe DevTools for Web pour C#

Not for use with personal data

La version 4.3.0 et supérieure des intégrations axe-core utilise une nouvelle technique lors de l'appel de AxeSelenium.run() qui ouvre une nouvelle fenêtre à la fin d'une exécution. De nombreux problèmes décrits dans ce document traitent des problèmes courants liés à cette technique et de leurs solutions potentielles.

Avoir un pilote obsolète

Un problème courant est d'avoir un pilote obsolète. Pour résoudre ce problème, assurez-vous que votre installation locale de geckodriver ou chromedriver est à jour.

Un message d'erreur type pour ce problème inclura un message concernant switchToWindow.

Exemple :

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

Avoir les bloqueurs de pop-up activés

Les bloqueurs de pop-up nous empêchent d'ouvrir la nouvelle fenêtre lors de l'appel de AxeSelenium::run. La configuration par défaut de la plupart des bibliothèques de tests automatisés devrait autoriser les pop-ups. Veuillez vous assurer de ne pas activer explicitement les bloqueurs de pop-up, car cela pourrait causer un problème lors de l'exécution des tests.

AxeSelenium::useLegacyMode(boolean legacy)

Si, pour une raison quelconque, vous ne parvenez pas à exécuter la nouvelle technique AxeSelenium::run sans erreurs, axe propose une nouvelle méthode chaînable qui vous permet d'exécuter la version héritée de AxeSelenium::run. Lors de l'utilisation de cette méthode, axe exclut les problèmes d'accessibilité qui peuvent survenir dans les frames et iframes inter-domaines.

note

AxeSelenium::useLegacyMode est obsolète et sera supprimé dans la version 5.0. Veuillez signaler toute erreur que vous pourriez rencontrer lors de l'exécution de AxeSelenium::run afin qu'elles puissent être corrigées avant que la version héritée ne soit supprimée.

Exemple

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