Gestione degli errori 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
Not for use with personal data

La versione 4.3.0 e successive delle integrazioni axe-core utilizzano una nuova tecnica durante la chiamata AxeSelenium.run() che apre una nuova finestra al termine di un'esecuzione. Molti degli argomenti trattati in questo documento riguardano problemi comuni di questa tecnica e le loro possibili soluzioni.

Driver obsoleto

Un problema comune è avere un driver obsoleto. Per risolvere questo problema, assicurati che l'installazione locale di geckodriver o chromedriver sia aggiornata.

Un esempio di messaggio di errore per questo problema includerà un messaggio su switchToWindow.

Esempio:

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

Blocchi popup abilitati

I blocchi popup ci impediscono di aprire una nuova finestra quando chiamiamo AxeSelenium::run. La configurazione predefinita per la maggior parte delle librerie di test di automazione dovrebbe consentire i popup. Assicuratevi di non abilitare esplicitamente i blocchi popup, poiché potrebbero causare problemi durante l'esecuzione dei test.

AxeSelenium::useLegacyMode(boolean legacy)

Se per qualche motivo non riesci a eseguire la nuova AxeSelenium::run tecnica senza errori, axe fornisce un nuovo metodo concatenabile che ti consente di eseguire la AxeSelenium::runversione legacy. Utilizzando questo metodo, axe esclude i problemi di accessibilità che potrebbero verificarsi nei frame e negli iframe cross-domain.

note

AxeSelenium::useLegacyMode è obsoleto e verrà rimosso nella versione 5.0. Segnala eventuali errori riscontrati durante l'esecuzione AxeSelenium::run in modo che possano essere corretti prima che la versione legacy venga rimossa.

Esempio

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