selenium-server-standalone.jar 和 chromedriver 之间的版本兼容性?

Version compatibility between selenium-server-standalone.jar and chromedriver?

chromedriver 和 selenium-server-standalone.jar 的版本兼容性如何?

换句话说,最新版本的 chromedriver 是否可以与最新版本的 selenium-server-standalone.jar 一起使用?

Chrome 驱动程序本身更多地依赖于执行节点上可用的 Chrome 版本(浏览器实际生成并且测试是 运行)。

如果您参考 release notes,您将看到驱动程序版本如何映射到 Chrome 本身的各种版本。

我的做法如下:

  • 我将我的 Selenium 依赖项(C#/Java 语言绑定)与我 运行 在本地或在我的网格上的 selenium-server 版本相匹配。
  • 当我部署升级 Selenium 依赖项的测试项目版本时,我只需将所有 Grid VM 升级到匹配版本(使用 JSON 节点配置在这里真的很有帮助,因为我必须做的一切是停止服务,交换 jar,然后使用我的 JSON 配置重新启动。
  • Firefox 驱动程序内置于 Selenium 中,因此那里没有升级管理。 IE Driver 已经(至少在历史上)匹配了 Selenium 的次要版本号(例如,当前的 IE Driver 是 2.48.0,而 Selenium 是 2.48.2),所以我通常会在升级我的 Selenium 版本时升级我的 IE 驱动程序。我在任何给定节点上使用的 Chrome 驱动程序版本将对应于该特定节点安装的任何 Chrome 版本,但在我自己的情况下,这通常是最新版本。

简而言之,将 Chrome 驱动程序的版本与您正在测试的 Chrome 版本相匹配更为重要。

加上我的 2 美分,chromedriver 充当 Chrome 和 Selenium jar 之间的 "bridge",所以一方面你有协议和接口(WebDriver)向后兼容,另一方面,您依赖于浏览器的版本,而事实并非如此。所以兼容性方面 @tim-slifer 的回答就足够了(除了现在 Firefox 也有一个 driver)。

但是,当使用 selenium-server-standalone.jar 时,您使用的是二进制文件。因此,版本控制明智,与 Selenium releases 保持同步只是为了修复随时间增加的新问题 - 其中一些与 chromedriver 和 Chrome 之间的兼容性有关。

所以是和否,两者之间存在一定的兼容性,尽管旧的 jar 和绑定可以在新浏览器上正常工作。