【问题标题】:Not able to launch chrome in protractor无法在量角器中启动 chrome
【发布时间】:2021-02-04 10:10:41
【问题描述】:

在量角器中启动 conf.js 文件时,出现以下错误:

错误 [OsProcess.checkForError] - org.apache.commons.exec.ExecuteException:执行失败(退出值:-559038737。由 java.io.IOException 引起:无法运行程序“/usr/local/lib /node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_87.0.4280.88”(在目录“.”中):错误=86,可执行文件中的CPU类型错误)

【问题讨论】:

  • 它与 webdriver-manager 的问题是它在 x86 机器上下载 m1 chromedriver。目前有两个 chromedriver for mac 从 87 版本 .chromedriver_mac64_m1.zip & chromedriver_mac64.zip

标签: protractor selenium-chromedriver


【解决方案1】:

https://github.com/angular/webdriver-manager/issues/476

本周末将很快提供修复程序。但你会通过这样做得到一个解决方法。

因为我非常需要解锁 - 对于处于类似情况的任何人来说,这是一个 hacky 解决方法(仅适用于 x86_64 macOS)。在 node_modules/webdriver-manager/built/lib/files/file_manager.js 更新 fileUrl.url 大约 166:

添加下一行

fileUrl.url = fileUrl.url.replace(/_m1/, '')

【讨论】:

    【解决方案2】:

    在 MacOs Catalina 中遇到了类似的问题。 这就是使用以下版本为我解决的方法:

    选项 1: 下载这些:

    https://chromedriver.storage.googleapis.com/71.0.3578.33/chromedriver_mac64.zip

    https://selenium-release.storage.googleapis.com/3.14/selenium-server-standalone-3.14.0.jar

    并用这个使 Selenium 服务器 UP:

    java -Dwebdriver.chrome.driver=./chromedriver_71.0.3578.33  -jar ./selenium-server-standalone-3.141.59.jar -port 4444
    

    选项 2:

    量角器:

    使用以下版本:

    webdriver-manager update --versions.chrome=71.0.3578.33
    webdriver-manager --versions.chrome=71.0.3578.33 start
    

    【讨论】:

      【解决方案3】:

      出错了 “等待驱动程序服务器启动超时。”运行后 webdriver-manager update

      通过降级到适用于您的以前版本的 webdriver 解决了这个问题。

      步骤:

      1. 导航到 node_modules/protractor/node_modules/webdriver-manager/selenium/
      2. 检查是否可以看到更新前使用的最后一个 chromedriver

      对于我来说,这是 chromedriver_86.0.4240.22

      1. 因为我还有以前的 chromedriver,所以我只是删除了
      • chromedriver_87.0.4280.88
      • chromedriver_87.0.4280.88.zip
      1. 在 node_modules/protractor/node_modules/webdriver-manager/selenium/update-config.json 我更改了 chromedriver_87.0.4280.88 的所有实例并替换为 chromedriver_86.0.4240.22

      2. 运行您的测试。

      3. 如果您不知道最适合您的版本是什么,您可以尝试 webdriver-manager 更新 --versions.chrome=86.0.4240.22 或寻找版本here

      【讨论】:

        【解决方案4】:

        这对我有用:

        1. 将量角器版本更新到当前稳定版本:"protractor": "^7.0.0",npm install 是我的选择,你的也类似
        2. 更新网络驱动程序:webdriver-manager update 带或不带 sudo 是其他答案中所述的正确命令
        3. 使用当前 chrome 版本运行 webdriver 管理器,这是我用于应用程序的命令:webdriver-manager start --versions.chrome=88.0.4324.96 因为我的 chrome 当前处于该版本,请将其替换为您的 chrome 版本(根据问题为 87.0.4280.88)

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-01-02
          • 1970-01-01
          • 2016-02-07
          • 2018-04-09
          相关资源
          最近更新 更多