如何更新 webdriver-manager (spawn Unknown system error -86)

How to update webdriver-manager (spawn Unknown system error -86)

(Angular)。 webdriver-manager 12.1.7 在基于英特尔的 Mac 上存在已知问题。 运行 e2e 测试我们得到以下错误:spawn Unknown system error -86。此错误已在 webdriver-manager 12.1.8 中修复,但我无法更新。

我已经尝试了此处列出的解决方案(重新安装 Protractor 等):

然而,卸载并重新安装后 protractor,没有任何变化。当我查看 package-lock.json 时,我们似乎仍在使用 webdriver-manager 12.1.7 而不是所需的 12.1.8。如何强制将 webdriver-manager 从 12.1.7 更新到 12.1.8?我们有一个调用 webdriver-manager update --standalone false --gecko falsenpm run webdriver-update 命令——这也无法更改版本(如果我正在正确阅读 package-lock.json)。

包-lock.json

"node_modules/protractor": {
  "version": "7.0.0",
 },
  "dependencies": {
    "webdriver-manager": "^12.1.7",
 },
 "bin": {
    "protractor": "bin/protractor",
    "webdriver-manager": "bin/webdriver-manager"
     }

....


"protractor": {
   "version": "7.0.0",
 },
"dependencies": {
    "webdriver-manager": {
      "version": "12.1.7",
      "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.7.tgz",
    }
  }

看起来 v7.0.0 设置为在 package.json 中使用 webdriver-manager v12.1.7 作为量角器。所以这就是它不更新到 12.1.8 的原因。您可以看到它被列为依赖项 here.

您可以尝试像我在 this answer 上发布的类似问题那样做。

基本上,切换到您的 ./node_modules/protractor 文件夹,运行 npm i webdriver-manager@12.1.8,然后切换回应用程序根目录和 运行 webdriver-manager update。它应该为您提供所有合适的驱动程序。


您可以尝试的另一种解决方案是从您的目录中删除 package-lock.json 文件,然后再次 运行 npm install。它可能会下拉您要查找的版本。将重新创建锁定文件,它可能会更新 webdriver-manager 版本。