首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“用于IE驱动程序的命令行服务器已停止工作”在使用Selenium,IEDriverServer通过Java执行测试时出错

“用于IE驱动程序的命令行服务器已停止工作”在使用Selenium,IEDriverServer通过Java执行测试时出错
EN

Stack Overflow用户
提问于 2018-08-24 10:16:21
回答 1查看 669关注 0票数 1

我在IEWebDriver中遇到了一系列的间歇性故障:

首先,测试失败,无法使用.quit()方法关闭驱动程序。我认为第一次失败是因为IEDriver炸弹。

我得到一个对话框:

代码语言:javascript
复制
Command line server for IE Driver has stopped working

第一次失败后,IEDriver将打开IE,但是当您尝试对页面中的对象执行操作时,就会得到SocketTimeoutException。有趣的是,这个错误需要3个小时才能失败:

代码语言:javascript
复制
java.net.SocketTimeoutException: Read timed out Build info: version: '3.12.0', revision: '7c6e0b3', time: '2018-05-08T15:15:08.936Z' System info: host: 'WORKSTATION-3', ip: '172.26.50.248', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_92' Driver info: driver.version: RemoteWebDriver

我如何阻止IEDriver爆炸,如果我不能阻止它停止下一个测试运行?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-24 10:32:44

这个错误信息..。

代码语言:javascript
复制
Command line server for IE Driver has stopped working
.
java.net.SocketTimeoutException: Read timed out Build info: version: '3.12.0', revision: '7c6e0b3', time: '2018-05-08T15:15:08.936Z' System info: host: 'WORKSTATION-3', ip: '172.26.50.248', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_92'

IEDriverServer无法启动/生成新的WebBrowsing会话的...implies,即InternetExplorer浏览器会话。

您的主要问题是您正在使用的二进制文件的版本之间的incompatibility,如下所示:

  • 您的Selenium客户端版本是3.12.0 of 2018-05-08T15:15:08.936Z,这有点老了。
  • 您的JDK版本是1.8.0_92,它非常古老。

因此,Selenium客户机v3.12.0与JDK v8u92之间存在明显的不匹配。

解决方案

  • 将JDK升级到当前级别JDK 8u181
  • 将Selenium升级到当前级别Version 3.14.0
  • 将IEDriverServer升级到当前的IEDriverServer v3.14.0.0级别。备注:按照Selenium客户机和InternetExplorerDriver同步发布的最佳实践,您必须使用来自同一版本的两个二进制文件。
  • 通过IDE清理项目工作区,并仅使用所需的依赖项重新构建项目。
  • 执行您的@Test
  • 始终在tearDown(){}方法中调用tearDown(){}来关闭和销毁WebDriver和WebDriver实例。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52002305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档