使用Selenium Webdriver(C#)我不时会收到下一个错误:
System.InvalidOperationException:未知错误:无法从超时获取自动化扩展:超时从渲染器接收消息:-3.959(会话信息:chrome = 37.0.2062.120)(驱动程序信息:chromedriver = 2.10.267521,platform = Windows NT 6.2 x86_64)
出现这种错误的方式:
OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)位于c:\ Projects \ webdriver \ dotnet \ src \ webdriver \ Remote \ RemoteWebDriver.cs:第1048行OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute,Dictionary`2参数)在c:\ Projects \ webdriver \ dotnet \ src \ webdriver \ Remote \ RemoteWebDriver.cs:第865行的AutomatedTests.DriverCover..ctor(IWebDriver驱动程序)
所以,它发生在下一段代码中:
public class DriverCover
{
public DriverCover(IWebDriver driver)
{
_driver = driver;
_driver.Manage().Window.Maximize(); //There is my mistake
}
private readonly IWebDriver _driver;
}
我使用此类作为PageObject类的基类,我使用PageFactory初始化网页元素。
我有chromedriver v.2.10 和Google Chrome v.37.0.2062.120 m
另外:在同一行我得到了另一个错误:
OpenQA.Selenium.WebDriverException:对URL
http://localhost:62407/session/021e05cd4c89abedb2abc77342b3bd7c/window/current/maximize
的远程WebDriver服务器的HTTP请求在60秒后超时。 ----> System.Net.WebException:该操作在OpenQA.Selenium的c:\ Projects \ webdriver \ dotnet \ src \ webdriver \ Remote \ HttpCommandExecutor.cs:第152行中的OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest请求)已超时。 .Remote.DriverServiceCommandExecutor.Execute(命令commandToExecute)位于c:\ Projects \ webdriver \ dotnet \ src \ webdriver \ Remote \ DriverServiceCommandExecutor.cs:第73行OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute,Dictionary`2参数)在C:\ Projects \ webdriver \ dotnet \ src \ webdriver \ Remote \ RemoteWebDriver.cs:877行AutomatedTests.DriverCover..ctor(IWebDriver驱动程序)
答案 0 :(得分:17)
我们看到类似Chrome的内容,问题归结为我们在运行测试之前最大化浏览器的方式。
我们改变了:
Driver.Manage().Window.Maximize();
至此(仅适用于Chrome):
if (typeof(TWebDriver) == typeof(ChromeDriver))
{
var options = new ChromeOptions();
options.AddArgument("start-maximized");
driver = new ChromeDriver(driverPath, options);
}
答案 1 :(得分:4)
由于Chrome驱动程序不匹配而发生这种情况。我通过将驱动程序升级到最新版本来解决此问题.i。2.29(https://chromedriver.storage.googleapis.com/index.html?path=2.29/)
答案 2 :(得分:0)
有一个类似的问题,同样的错误,但是当调用getScreenshotAs()....我有一个旧的ChromeDriver和更新修复了我的问题
答案 3 :(得分:0)
这个工作在谷歌搜索了许多线程之后,我终于找到了解决这些问题的方法。
虽然上述大多数解决方案都正确指出了由 Chrome 更新中的错误引起的问题,但请按照以下解决方案进行修复-
下载并使用与Chrome版本兼容的最新ChromeDriver 从 https://www.selenium.dev/ 下载最新的 Selenium 驱动程序并在您的系统上执行一次 jar 文件。 再次运行你的代码,看看神奇
答案 4 :(得分:-1)
更新ChromeDriver将解决此问题。