0

我正在使用量角器为我的应用程序运行 end-2-end 测试。当我尝试运行该应用程序时,出现以下错误

[16:17:53] E/local - Error code: 135
[16:17:53] E/local - Error message: Could not find chromedriver at C:\Users\Dell\AppData\Roaming\npm\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_2.26
[16:17:53] E/local - Error: Could not find chromedriver at C:\Users\Dell\AppData\Roaming\npm\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_2.26

我不知道为什么在我运行命令时它会寻找 2.26 版

webdriver-manager --version

它给了我 2.32 版。我还通过运行再次更新了它(本地和全球)

webdriver-manager update -g --versions.chrome=2.32

但它似乎不起作用。我还手动检查了 2.32 版的 webdriver exe 在错误引用的位置可用,即 C:\Users\Dell\AppData\Roaming\npm\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_2.26 .

此外,当我尝试使用以下命令更新 webdriver-manager 时,我将版本为 2.26 的 webdriver-manager exe 放置在上述位置。我不知道它是从某个配置还是从其他地方读取它,因为我无法找到它。在如何摆脱这个 2.26 版本以及如何让量角器使用最新版本(即 2.32)时需要帮助。

4

3 回答 3

3

我无法通过webdriver-manager updatenpm install/update解决此问题,但找到了解决方法。我已经手动下载了 chromedriver version 2.32将.exe文件重命名为chromedriver_2.26.exe,然后在C:\Users\Dell\AppData\Roaming\npm\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_2.26 上替换它,它工作正常。

于 2017-10-05T06:22:41.887 回答
1

我发现 Protractor 的 webdriver-manager 使用的 ChromeDriver 版本总是远远落后于我的需求。

我为此找到的解决方案是:

  1. 下载独立的 Selenium 服务器
  2. 下载您想要的ChromeDriver版本。
  3. 然后,您将使用以下内容创建一个.bat文件:

    java -Dwebdriver.chrome.driver=C:\path_to_your_files\chromedriver -jar C:\path_to_your_files\selenium-server-standalone-3.4.0.jar -port 4444

然后,您只需双击.bat文件并使用所需的任何 ChromeDriver 版本启动您的 Selenium 服务器。希望这可以帮助!

于 2017-10-04T22:20:24.873 回答
0

当我将 ChromeDriver 从 75 升级到 79 时,我遇到了类似的问题。即使“webdriver-manager update --versions.chrome=79 ...”确实将最新的 exe 放在 rootfolder\node_modules\webdriver-manager\selenium 下,Protractor 仍然选择旧版本。

对我来说,当我手动将最新版本的 ChromeDriver 放在 rootfolder\node_modules\protractor\node_modules\webdriver-manager\selenium 下并更新位于同一文件夹中的 update-config.json 时,问题得到了解决。

于 2019-12-18T09:30:07.933 回答