【问题标题】:TFS2018 Automated Test Build The file c:\chromedriver.exe does not existTFS2018 自动测试构建文件 c:\chromedriver.exe 不存在
【发布时间】:2018-03-22 21:30:07
【问题描述】:

我已经为我的测试自动化套件在 TFS 上构建了一个版本。它有 3 个任务 - Nuget 还原、解决方案构建和 VSTest 任务。在我的测试中,我创建了一个新的 ChromeDriver 实例,并在我的解决方案上安装了 Chrome Webdriver Nuget。这在本地运行良好。然而,TFS 构建引发了以下错误:

OpenQA.Selenium.DriverServiceNotFoundException : 文件 c:\chromedriver.exe 不存在

我无法弄清楚为什么 Nuget 恢复没有恢复 chrome webdriver 包。工作中的所有其他软件包似乎都在恢复/工作正常,因为它正在进入我的 SpecFlow 功能文件的第一步,并且只有在我尝试启动 Chrome 实例时才会失败。我错过了什么吗?在此先感谢迈克

【问题讨论】:

    标签: selenium tfs tfsbuild


    【解决方案1】:

    根据您收到的错误消息,我推断如下:

    • 在您的本地计算机上,您的 C: 驱动程序根文件夹中有 chromedriver.exe 二进制文件(我认为这不是一个好主意)。
    • 您要么将 chromedriver.exe 二进制位置添加到 PATH 环境变量中,要么在测试中硬编码其位置

    首先,确保该位置在您的测试中没有被硬编码。

    你可以做什么:

    • 在代理机器上手动复制并将chromedriver.exe二进制位置添加到PATH环境变量(之后可能需要重新启动)。如果您有多台机器,则不建议这样做。根据代理的数量,升级可能会成为一项痛苦的任务。
    • 继续使用 Nuget。您最终可以检查 bin/Debugbin/Release 文件夹,以确保它在还原和构建后存在。

    来自 Chromedriver Nuget 包说明:

    为 Selenium 安装 Chrome 驱动程序(Win32、macOS 和 Linux64) WebDriver 进入您的单元测试项目。 在构建过程中,“chromedriver(.exe)”从包文件夹复制到 bin 文件夹。 NuGet 包恢复就绪,无需将“chromedriver(.exe)”二进制文件提交到源代码控制库。

    您也可以查看微软documentation page的信息。

    【讨论】:

      猜你喜欢
      • 2018-08-30
      • 1970-01-01
      • 2015-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-03
      • 1970-01-01
      相关资源
      最近更新 更多