完整的错误消息是:
Test(s) failed. OpenQA.Selenium.WebDriverException : The HTTP request to the remote WebDriver server for URL http://localhost:59662/session timed out after 60 seconds.
----> System.Net.WebException : The operation has timed out
我的代码中发生这种情况的行只是一个新的ChromeDriver实例:
CurrentDriver = new ChromeDriver(section["chromedriverfolder"]);
所以我的问题是......为什么新的ChromeDriver会调用/ session URL,以及可能导致它失败的原因?
答案 0 :(得分:2)
我在TeamCity 9.x上运行Selenium.WebDriver.ChromeDriver v2.22和Chrome v52.0.2743.116 m时遇到了同样的错误。我能够通过将运行在TeamCity代理上的Chrome版本回滚到v51来解决问题。
在检查执行测试的代理时,会弹出一个错误消息:“Chrome Automation扩展已崩溃。单击此气球重新加载扩展。”
这似乎是最新版本的Chrome和Selenium.WebDriver.ChromeDriver的一个错误,但是到目前为止这是found
的唯一线索编辑:指向ChromeDriver issue
的链接EDIT2:指向resolution
的链接答案 1 :(得分:0)
我有一个答案,ChromeDriver调用/ session URL,但不是第二部分为什么它会超时。请查看它是否可以为调试过程提供一些线索以找出故障: 当我们调用新的ChromeDriver()时 它在构造函数中创建RemoteWebDriver:
(defun my-helm-swoop() (interactive)
(setq my-helm-swoop-input-history
(let ((minibuffer-history my-helm-swoop-input-history))
(helm-swoop) minibuffer-history)))
最终归结为:
super(new DriverCommandExecutor(service), capabilities);
在这个方法中,我们做startClient,在这种特殊情况下基本上什么都不做
在startClient之后我们做:
public RemoteWebDriver(CommandExecutor executor, Capabilities desiredCapabilities,
Capabilities requiredCapabilities) {
此方法在以下行中发出请求/会话:
startSession(desiredCapabilities, requiredCapabilities);
DriverCommand.NEW_SESSION设置为newSession,在命令编解码器中映射到post / session
Response response = execute(DriverCommand.NEW_SESSION, parameters);