间歇性地org.openqa.selenium.WebDriverException:未知错误:由于页面崩溃而导致会话被删除"适用于Chrome 57和chromedriver 2.29

时间:2017-04-10 10:07:07

标签: java google-chrome selenium session

我们的Selenium自动化测试版运行良好,但自从我们升级到Chrome 57和chromedriver 2.29后,我们的自动化套件不断跳过执行测试用例。使用Selenium 3.0和3.3.1都可以看到这个问题。有10次点击自动化,8次页面崩溃并跳过所有自动化测试。

失败日志显示" org.openqa.selenium.WebDriverException:未知错误:由于页面崩溃而导致会话被删除"。

错误:

1910745 [main] INFO  com.zimbra.qa.selenium.framework.ui.AbsSeleniumObject  - getElementById(ZLoginButton)
1910831 [main] INFO  com.zimbra.qa.selenium.framework.ui.AbsSeleniumObject  - getElementById()org.openqa.selenium.WebDriverException: unknown error: session deleted because of page crash
from unknown error: cannot determine loading status
from tab crashed
  (Session info: chrome=57.0.2987.133)
  (Driver info: chromedriver=2.29.461591 (62ebf098771772160f391d75e589dc567915b233),platform=Windows NT 6.1.7601 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 83 milliseconds
Build info: version: '3.3.1', revision: '5234b32', time: '2017-03-10 09:04:52 -0800'

3 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。您可以直接转到任务管理器并终止Chromedriver的所有实例。

它将解决您的问题

答案 1 :(得分:0)

我已经检查过这个问题,在Chrome浏览器上不断运行大约50个小时的测试,现在情况还算不错。我不会说这是解决方案,因为Chrome驱动程序本身修复了这个问题。至于测试我们做到了,它使用最新的selenium 3.6.0和chrome驱动程序2.33工作正常,所以想发布作为答案只是为了解决这个问题。

Chrome 61,Selenium 3.6.0和Chrome驱动程序2.33组合看起来非常好并且比以前更加稳定,可用于在长时间运行的复杂应用程序上运行自动化测试。

Chrome version: 61.0

chromeDriverURL=http://chromedriver.storage.googleapis.com/2.33:

<dependency org="org.seleniumhq.selenium" name="selenium-api" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-chrome-driver" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-edge-driver" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-firefox-driver" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-ie-driver" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-java" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-remote-driver" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-safari-driver" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-server" rev="3.6.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-support" rev="3.6.0"/>

答案 2 :(得分:-1)

我可以保证使用selenium 3.3.1恢复到2.28驱动程序不起作用。事实上,我之前已将该驱动程序的配置升级为2.29,但具有相同的问题。这非常烦人。

这也适用于Firefox,但不常见。

抱歉这个坏消息,但我认为Selenium是个问题。

解决此问题的最佳方法是使用Selenium版本(用于selenium驱动程序和远程驱动程序)3.0.1

Maven的依赖关系:

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-server</artifactId>
        <version>3.0.1</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-remote-driver</artifactId>
        <version>3.0.1</version>
    </dependency>