【问题标题】:Chrome driver has stopped error when running Selenium tests (version 80)运行 Selenium 测试(版本 80)时,Chrome 驱动程序已停止错误
【发布时间】:2020-07-02 09:46:43
【问题描述】:

从托管 Jenkins 实例和自动化容器的 VM 运行 Selenium 测试时,我们的 chrome 实例不断崩溃。在本地尝试时似乎运行良好(与 VM 相同的浏览器版本)。几个星期以来,我一直在尝试解决这个问题,并检查了其他类似的 SO 帖子,但到目前为止没有成功,我真的被困在这一点上。

这些是我们的配置。

  • Chrome 驱动程序版本 80.0.3987.106
  • Java 版本 1.8.0_144
  • Selenium Chrome 驱动程序 3.141.59
  • Chrome 浏览器 80.0.3987.149

    ChromeOptions options = new ChromeOptions();
    options.addArguments("start-maximized" );
    options.addArguments("disable-infobars" );
    options.addArguments("--disable-extensions" );
    options.addArguments("--window-size=1200x600" );
    options.addArguments("--disable-cache" );
    options.addArguments("--disable-application-cache" );
    options.addArguments("--disk-cache-size=0" );
    options.addArguments("--disable-gpu" ); // applicable to windows os only
    options.addArguments("--disable-dev-shm-usage" ); // overcome limited resource problems
    options.addArguments("--dns-prefetch-disable" );
    options.addArguments("--no-sandbox" ); // Bypass OS security model
    options.setPageLoadStrategy(PageLoadStrategy.NORMAL);
    driver = new ChromeDriver(options);
    

非常感谢。

【问题讨论】:

  • 有时,如果 Chrome 未正确重新启动/更新,可能会出现此类错误。尝试关闭所有打开的 Chrome 窗口和 Chrome 驱动程序并运行脚本。如果还是不行,重启整个VM后再试。
  • 您好 Naveen,感谢您的回答。是的,我的@after 方法中有driver.close()driver.quit(),并且浏览器的所有实例都从屏幕上关闭。
  • 您是否在没有选项的情况下运行它?如果它在没有这些选项的情况下崩溃,则问题出在 selenium 中,如果没有,则问题出在参数上(像 driver = new ChromeDriver(); 一样运行它以查看它是否崩溃。如果没有参数一切正常,请删除 "--disable-gpu" 并给出再试一次...... VM可能有一些问题(在我看来,因为你说它只与Windows相关)+尝试在没有jenkins的情况下将它作为1个大文件(迭代)运行,看看它是否工作正常。 .. GL 调试中 ;)
  • 嗨,谢谢。我会在星期一试试,然后回来告诉你会发生什么。干杯。

标签: selenium google-chrome selenium-webdriver automation selenium-chromedriver


【解决方案1】:

虽然您提到使用 Java 版本 1.8.0_144,但根据您的屏幕截图,您的有效 Java 版本是 1.8.0_77,这是古老的.

因此您会看到错误。


解决方案

一个有效的解决方案是将JDK升级到JDK 8u241的当前级别。

【讨论】:

  • 您好,感谢您的回答。恐怕这不起作用,因为已对最新的 jdk 版本进行了更新,但我们仍然遇到同样的崩溃。
【解决方案2】:

不确定是否是理想的解决方案,但最终解决了我们的问题。 我们在测试之间和 chrome 驱动程序关闭后添加了一个线程,以便在重新加载之前它有一些缓冲时间来呼吸,从那时起它就停止了崩溃。

【讨论】:

    猜你喜欢
    • 2021-09-29
    • 2015-09-23
    • 2018-10-11
    • 2013-08-08
    • 2022-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多