无法同时运行 chromedriver 和 google-chrome-stable

无法同时运行 chromedriver 和 google-chrome-stable

到目前为止,我一直使用它chromium作为我的默认浏览器并一直在运行 java-selenium 测试自动化chromedriver(我已经下载并通过编程手动将其位置指定给自动化)。

直到今天,我都能同时使用这两个应用程序。我安装了事实上的google-chrome-stable应用程序,现在如果我打开它,chromedriver实例化就会失败,自动化就会挂起。

如果我关闭google-chrome-stable并打开 Chromium(就像我现在问这个问题时所做的那样),我可以运行测试自动化,但是 Unity 在启动器中显示chromedriver图标google-chrome-stable。我怀疑这是正在发生的事情的征兆,但我无法想象是什么。

如何修复此问题,以便我可以像以前一样并排运行它们chromium

答案1

在阅读并做了一些研究后,我意识到我对chromedriver工作原理有一个非常重要的误解。从他们的自述文件.txt

ChromeDriver 将默认使用系统安装的 Chrome。

... [为简洁/相关性而省略部分] ...

=====建筑=====

ChromeDriver 与 Chrome 分开提供。它通过 DevTools 在进程外控制 Chrome。ChromeDriver 是一个独立服务器,它通过 WebDriver 有线协议与 WebDriver 客户端通信,该协议本质上是通过 HTTP 同步 JSON 命令。WebDriver 客户端有多种语言版本,许多都可从开源 selenium/webdriver 项目获得:http://code.google.com/p/selenium。ChromeDriver 使用来自 net/server 的网络服务器。

它的工作原理的这个基本部分就是为什么google-chrome-stable它开始出现问题。这也意味着,尽管我以为我正在chromium与 并排使用,但我可能错误地同时chromedriver共享了同一个实例。chromium

相关内容