C# Fehlerbehandlung

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

Fehlersuche bei häufigen Fehlern bei der Verwendung von Axe DevTools für das Web mit C#

Not for use with personal data

Version 4.3.0 und höher der axe-core-Integrationen verwenden eine neue Technik beim Aufruf von AxeSelenium.run(), die am Ende eines Laufs ein neues Fenster öffnet. Viele der in diesem Dokument beschriebenen Probleme beziehen sich auf diese Technik und deren mögliche Lösungen.

Veralteter Treiber

Ein häufiges Problem ist ein veralteter Treiber. Um dieses Problem zu beheben, stellen Sie sicher, dass Ihre lokale Installation von geckodriver oder chromedriver auf dem neuesten Stand ist.

Eine beispielhafte Fehlermeldung für dieses Problem wird eine Nachricht über switchToWindow enthalten.

Beispiel:

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

Aktivierte Popup-Blocker

Popup-Blocker verhindern, dass wir beim Aufruf von AxeSelenium::run ein neues Fenster öffnen können. Die Standardkonfiguration der meisten Automatisierungstest-Bibliotheken sollte Pop-ups zulassen. Bitte stellen Sie sicher, dass Sie Popup-Blocker nicht explizit aktivieren, da dies während der Ausführung der Tests ein Problem verursachen kann.

AxeSelenium::useLegacyMode(boolean legacy)

Falls Sie aus irgendeinem Grund die neue AxeSelenium::run-Technik nicht fehlerfrei ausführen können, bietet axe eine neue kaskadierbare Methode an, mit der Sie die Legacy-Version von AxeSelenium::run ausführen können. Bei Verwendung dieser Methode schließt axe Zugänglichkeitsprobleme aus, die in domainsübergreifenden Frames und iframes auftreten können.

note

AxeSelenium::useLegacyMode ist veraltet und wird in Version 5.0 entfernt. Bitte melden Sie alle Fehler, die bei der Ausführung von AxeSelenium::run auftreten, damit sie behoben werden können, bevor die Legacy-Version entfernt wird.

Beispiel

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