量角器使用旧的 webdriver 版本,而系统中安装了最新版本
protractor is using old webdriver version while latest is installed in system
我正在使用量角器对我的应用程序进行 运行 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 版。我还通过 运行ning
再次更新了它(本地和全球)
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)一起工作方面需要帮助。
我发现 Protractor 的 webdriver-manager 使用的 ChromeDriver 版本总是远远落后于我的需要。
我找到的解决方案是:
- 下载 Selenium Server Standalone
- 下载您想要的 ChromeDriver 版本。
然后您将使用以下内容创建一个 .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 服务器。希望这对您有所帮助!
我无法通过 webdriver-manager update 或 npm install/update 解决这个问题,但找到了解决方法.我已经手动下载了 chromedriver 版本 2.32。将 .exe 文件重命名为 chromedriver_2.26.exe,然后将其替换为 C:\Users\Dell\AppData\Roaming\npm\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_2.26 并且它工作正常。
我将 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 下并更新位于同一文件夹中的更新-config.json 时,问题得到解决。
我正在使用量角器对我的应用程序进行 运行 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 版。我还通过 运行ning
再次更新了它(本地和全球)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)一起工作方面需要帮助。
我发现 Protractor 的 webdriver-manager 使用的 ChromeDriver 版本总是远远落后于我的需要。
我找到的解决方案是:
- 下载 Selenium Server Standalone
- 下载您想要的 ChromeDriver 版本。
然后您将使用以下内容创建一个 .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 服务器。希望这对您有所帮助!
我无法通过 webdriver-manager update 或 npm install/update 解决这个问题,但找到了解决方法.我已经手动下载了 chromedriver 版本 2.32。将 .exe 文件重命名为 chromedriver_2.26.exe,然后将其替换为 C:\Users\Dell\AppData\Roaming\npm\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_2.26 并且它工作正常。
我将 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 下并更新位于同一文件夹中的更新-config.json 时,问题得到解决。