TeamCity 9.1.7 中的 Selenium ChromeDriver - 找不到 Chrome 二进制文件

标签 selenium selenium-webdriver selenium-chromedriver specflow

我正在使用 chromedriver 2.22.0.0(通过 nuget 包安装)在 VS 中运行 Specflow。在本地,chromedriver 启动并且所有测试运行良好。

但是,当尝试在 TeamCity 9 中运行时,我收到以下错误:

Test(s) failed. System.InvalidOperationException : unknown error: cannot find Chrome binary
  (Driver info: chromedriver=2.22.397933 (1cab651507b88dec79b2b2a22d1943c01833cc1b),platform=Windows NT 6.3.9600 x86_64)
   at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)
   at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
   at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities)
   at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities)
   at OpenQA.Selenium.Chrome.ChromeDriver..ctor(ChromeOptions options)

我已检查该包是否存在于 TeamCity 服务器上,并且确实存在。事实上,它实际上在后台启动了 chromedriver.exe,正如我在任务管理器中看到的那样。

是否是chromedriver的版本与TeamCity运行的Windows服务器不兼容?有什么想法吗?

感谢任何帮助!

或者,在 TeamCity 中使用 chromedriver 运行 Specflow 测试时最好的方法是什么?

最佳答案

尽管在 TeamCity 2017.1.5 上,我也遇到了完全相同的问题。对我来说,它有助于在同一台计算机上安装 Chrome(实际的完整浏览器)。看来 ChromeDriver 正在与 mothership 共享一些代码?

有人会认为 ChromeDriver 应该是独立的二进制文件,但事实似乎并非如此......

关于TeamCity 9.1.7 中的 Selenium ChromeDriver - 找不到 Chrome 二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37947947/

相关文章:

java - 带有 WebDriver 的 Selenium - 等待

python - 绕过 Microsoft Edge 上的 Selenium Webdriver 安全证书页面

pandas - 使用 pandas/beautiful soup 抓取表数据(而不是慢的 Selenium?),BS 实现不起作用

Selenium IDE : how to popup a dialog and wait for user to click OK

internet-explorer - Firefox配置文件首选项vs Chrome选项vs IE所需功能

java - Maven、testng、surefire : not running AfterClass

Java 和 Selenium : Static methods in Page Objects

python - 如何使用 Selenium 向 ChromeDriver 提交 HTTP 身份验证(Flask BASIC Auth)

python - 在 Selenium 中打开之前设置 chromedriver 窗口大小(python)

ruby-on-rails - headless Chrome 空白白屏