间歇性org.openqa.selenium.WebDriver异常:未知错误:会话由于页面崩溃而被删除"Chrome 57和chromedriver 2.29



我们的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'

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

它将解决您的问题

我已经检查了这个问题,以便在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"/>

我可以保证,使用 selenium 2.28 恢复到 3.3.1 驱动程序是行不通的。事实上,我之前有过该配置,并将驱动程序升级到 2.29,但存在相同的问题。这非常烦人。

这种情况也发生在Firefox上,但频率较低。

对不起,坏消息,但我认为硒是问题所在。

解决此问题的最佳方法是使用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>

最新更新