问题
Using Selenium Webdriver (C#) I'm getting the next error from time to time:
System.InvalidOperationException : unknown error: cannot get automation extension from timeout: Timed out receiving message from renderer: -3.959 (Session info: chrome=37.0.2062.120) (Driver info: chromedriver=2.10.267521,platform=Windows NT 6.2 x86_64)
The way in which this mistake appears:
OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse) in c:\Projects\webdriver\dotnet\src\webdriver\Remote\RemoteWebDriver.cs:line 1048 at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters) in c:\Projects\webdriver\dotnet\src\webdriver\Remote\RemoteWebDriver.cs:line 865 at AutomatedTests.DriverCover..ctor(IWebDriver driver)
So, it's happening in the next piece of code:
public class DriverCover
{
public DriverCover(IWebDriver driver)
{
_driver = driver;
_driver.Manage().Window.Maximize(); //There is my mistake
}
private readonly IWebDriver _driver;
}
I use this class as a base class of PageObject classes where I use PageFactory to initialize elements of web pages.
I have chromedriver v.2.10 and Google Chrome v. 37.0.2062.120 m
In addition: at the same line I got another error:
OpenQA.Selenium.WebDriverException : The HTTP request to the remote WebDriver server for URL
http://localhost:62407/session/021e05cd4c89abedb2abc77342b3bd7c/window/current/maximizetimed out after 60 seconds. ----> System.Net.WebException : The operation has timed outat OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest request) in c:\Projects\webdriver\dotnet\src\webdriver\Remote\HttpCommandExecutor.cs:line 152 at OpenQA.Selenium.Remote.DriverServiceCommandExecutor.Execute(Command commandToExecute) in c:\Projects\webdriver\dotnet\src\webdriver\Remote\DriverServiceCommandExecutor.cs:line 73 at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters) in c:\Projects\webdriver\dotnet\src\webdriver\Remote\RemoteWebDriver.cs:line 852 at AutomatedTests.DriverCover..ctor(IWebDriver driver)
回答1:
We were seeing something similar with Chrome and the issue came down to the way we were maximizing the browser before running the tests.
We switched from this:
Driver.Manage().Window.Maximize();
To this (for Chrome only):
if (typeof(TWebDriver) == typeof(ChromeDriver))
{
var options = new ChromeOptions();
options.AddArgument("start-maximized");
driver = new ChromeDriver(driverPath, options);
}
回答2:
It happens because of Chrome Driver Mismatch.I had fixed this issue by upgrading my driver to the latest version.i.e 2.29(https://chromedriver.storage.googleapis.com/index.html?path=2.29/)
回答3:
You can try this, worked for me My chrome browser version is : 57 and Chrome Driver version is : 2.27 By adding the following code lines i resolved my problem.
ChromeOptions options = new ChromeOptions();
options.addArguments("enable-automation");
options.addArguments("--disable-infobars");
WebDriver driver = new ChromeDriver(options);
回答4:
Had a similar issue, same error, but when calling getScreenshotAs().... I had a old ChromeDriver and updating fixed the issue for me
回答5:
Updating the ChromeDriver will do the trick for this problem.
来源:https://stackoverflow.com/questions/25890027/cannot-get-automation-extension-from-timeout-timed-out-receiving-message-from-r