web-dev-qa-db-fra.com

Impossible d'obtenir l'extension d'automatisation après l'expiration du délai: délai de réception du message du moteur de rendu expiré.

En utilisant Selenium Webdriver (C #), je reçois de temps en temps la prochaine erreur: 

System.InvalidOperationException: erreur inconnue: impossible d'obtenir l'extension d'automatisation après expiration du délai: délai de réception du message du moteur de rendu: -3,959 (Informations de session: chrome = 37.0.2062.120) (Informations sur le pilote: chromedriver = 2.10.267521, platform = Windows NT 6.2 x86_64)

La façon dont cette erreur apparaît:

OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError (Response errorResponse) dans c:\Projects\webdriver\dotnet\src\webdriver\Remote\RemoteWebDriver.cs: ligne 1048 à OpenQA.Selenium.Remote.Remote.Remote.Remote `2 paramètres) dans c:\Projects\webdriver\dotnet\src\webdriver\Remote\RemoteWebDriver.cs: ligne 865 à AutomatedTests.DriverCover..ctor (pilote IWebDriver) 

Cela se passe donc dans le code suivant:

 public class DriverCover
 {
        public DriverCover(IWebDriver driver)
        {
            _driver = driver;

            _driver.Manage().Window.Maximize(); //There is my mistake
        }

        private readonly IWebDriver _driver;
 }

J'utilise cette classe comme classe de base des classes PageObject où j'utilise PageFactory pour initialiser des éléments de pages Web.

J'ai chromedriver v.2.10 Et Google Chrome v. 37.0.2062.120 m

En plus: à la même ligne j'ai une autre erreur:

OpenQA.Selenium.WebDriverException: la requête HTTP adressée au serveur WebDriver distant pour l'URL http://localhost:62407/session/021e05cd4c89abedb2abc77342b3bd7c/window/current/maximize a expiré au bout de 60 secondes. ----> System.Net.WebException: l'opération a expiré depuis OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse (demande WebRequest) dans c:\Projects\webdriver\dotnet\src\webdriver\Remote\HttpCommandExecutor.cs: line 152 à OpenQA.Selenium.Remote.DriverServiceCommandExecutor.Execute (commande commandToExecute) dans c:\Projects\webdriver\dotnet\src\webdriver\RemoteServiceCommandExecutor.cs: ligne 73 à OpenQA.Selenium.Remote , Paramètres du dictionnaire`2) dans c:\Projets\Webdriver\dotnet\src\Webdriver\Remote\RemoteWebDriver.cs: ligne 852 de AutomatedTests.DriverCover..ctor (pilote IWebDriver)

12
Denis Koreyba

Nous voyions quelque chose de similaire avec Chrome et le problème résidait dans la façon dont nous maximisions le navigateur avant d'exécuter les tests.

Nous sommes passés de ceci:

Driver.Manage().Window.Maximize();

Pour cela (pour Chrome uniquement):

if (typeof(TWebDriver) == typeof(ChromeDriver))
{
    var options = new ChromeOptions();
    options.AddArgument("start-maximized");

    driver = new ChromeDriver(driverPath, options);
}
17
JasonG

Cela se produit à cause du désagrément du pilote Chrome. J'avais résolu ce problème en mettant à niveau mon pilote avec la dernière version.i.e 2.29 ( https://chromedriver.storage.googleapis.com/index.html?path=2.29/ )

4
Parshwaraj

Vous pouvez essayer cela, a travaillé pour moiMon version du navigateur Chrome est: 57 et version du pilote Chrome est: 2.27 En ajoutant les lignes de code suivantes, j'ai résolu mon problème.

ChromeOptions options = new ChromeOptions();
options.addArguments("enable-automation");
options.addArguments("--disable-infobars");
WebDriver driver = new ChromeDriver(options);
1
kiranmai

Avait un problème similaire, même erreur, mais lorsque vous appelez getScreenshotAs () .... J'ai eu un ancien pilote ChromeDriver et mise à jour corrigé le problème pour moi

0
momomo