WebDriverException:消息:未知错误:呼叫功能结果缺失'值'用硒

时间:2018-03-23 10:13:17

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

一周前我创建了一个自动测试脚本。从昨天开始,我得到了下面的问题?

DevTools listening on ws://127.0.0.1:12825/devtools/browser/2aa96c44-290f-4732-85d7-15369b2006f5
FSE Refresh                                                           | FAIL |
Parent suite setup failed:
WebDriverException: Message: unknown error: call function result missing 'value'
  (Session info: chrome=65.0.3325.181)
  (Driver info: chromedriver=2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba81d9023f),platform=Windows NT 10.0.15063 x86_64)

问题可能与最近升级的chrome = 65.0.3325.181有关吗?有什么建议可以解决这个问题吗?。

由于 安德烈

3 个答案:

答案 0 :(得分:1)

错误说明了一切:

WebDriverException: Message: unknown error: call function result missing 'value' 
(Session info: chrome=65.0.3325.181) 
(Driver info: chromedriver=2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba81d9023f)

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

  • 我们不知道您的 Selenium客户端版本。
  • 您的 ChromeDriver 版本 2.33 给我们。
  • ChromeDriver v2.33 的发行说明明确提及:
  

支持 Chrome v60-62

  • 您的 Chrome 版本 65.x

因此 ChromeDriver Chrome浏览器版本之间存在明显的不匹配。

解决方案

  • ChromeDriver 升级到ChromeDriver v2.37级别。
  • Chrome 版本升级为 Chrome v64-66 级别。
  • 通过 IDE 清理您的项目工作区仅使用所需的依赖项重建项目
  • 使用CCleaner工具清除执行测试套件之前和之后的所有操作系统杂务。
  • 如果您的基本 Chrome 基础版本太旧,请通过Revo Uninstaller将其卸载并安装最近的GA和已发布的 Chrome 版本。
  • 执行@Test

答案 1 :(得分:0)

我使用的是Protractor,更新ChromeDriver可以通过运行webdriver-manager更新来获取最新的ChromeDriver,并为我修复了这个问题:

webdriver-manager update

(基本上经历了与OP相同的事情并根据DebanjanB的答案意识到我可能需要更新Chromedriver,但是Protractor很容易这样做)

答案 2 :(得分:0)

运行e2e测试时,我遇到了类似的问题。 将量角器更新到最新版本,为我解决了这个问题。

这是更新量角器的方法。

  1. 检查可用的量角器的最新版本,例如现在的5.4.1

  2. 在devDependencies下更新项目中的package.json文件:

    “量角器”:“ ^ 5.4.1”

  3. 删除node_modules内部的所有内容

  4. 再次执行npm安装,它将安装所有最新版本。

  5. 现在,在再次启动服务器之后,再次运行测试。

希望这可以解决问题。