Node.js 量角器显示错误的chromedriver版本,无法运行e2e测试

Node.js 量角器显示错误的chromedriver版本,无法运行e2e测试,node.js,google-chrome,selenium-webdriver,protractor,selenium-chromedriver,Node.js,Google Chrome,Selenium Webdriver,Protractor,Selenium Chromedriver,我正在使用angular2 web应用程序,我们为e2e测试设置了量角器,但我的所有测试都因一些模糊错误而失败。 错误是get is × Full amount can be tendered to card via scanning the device - Failed: unknown error: cannot get automation extension from unknown error: page could not be found: chrome-extension:

我正在使用angular2 web应用程序,我们为e2e测试设置了量角器,但我的所有测试都因一些模糊错误而失败。 错误是get is

× Full amount can be tendered to card via scanning the device
  - Failed: unknown error: cannot get automation extension
from unknown error: page could not be found: chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html
  (Session info: chrome=59.0.3071.115)
  (Driver info: chromedriver=2.26.436362 (5476ec6bf7ccbada1734a0cdec7d570bb042aa30),platform=Windows NT 10.0.10586 x86_64)
  - Failed: unknown error: cannot get automation extension
from unknown error: page could not be found: chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html
 (Session info: chrome=59.0.3071.115)
 (Driver info: chromedriver=2.26.436362(5476ec6bf7ccbada1734a0cdec7d570bb042aa30),platform=Windows NT 10.0.10586 x86_64)  
我的环境是windows 10,节点版本是6.9.1,npm版本是3.8.6,chrome版本是59.xx,chromedriver版本是2.30,但不知道为什么控制台中会显示2.26以及错误。我试图通过npm安装chromedriver(本地和全局)对其进行更新,它显示已安装2.30,但当我尝试运行量角器时,其显示chromedriver=2.26.436362(如输出中所示)。我尝试了很多在互联网上找到的解决方案,但都没有效果(包括将chrome升级到最新版本+chromedriver升级到最新版本,将chrome降级到58,chromedriver升级到2.28等等)

我在设置环境时遗漏了什么?任何帮助都将不胜感激。谢谢

*******更新*******

我已经将chromedriver版本升级到2.30,现在开始出现不同的错误,甚至现在还没有开始,错误如下

e2e/app/framework/element-functions.ts(43,29): error TS2349: Cannot invoke an expression whose type lacks a call signature.
e2e/app/framework/wait-functions.ts(45,18): error TS2345: Argument of type 'Function' is not assignable to parameter of type 'Promise<{}> | Condition<{}> | ((driver: WebDriver) => {})'.
Type 'Function' is not assignable to type '(driver: WebDriver) => {}'.
Type 'Function' provides no match for the signature '(driver: WebDriver): {}'
node_modules/blocking-proxy/built/lib/angular_wait_barrier.d.ts(43,43): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/blockingproxy.d.ts(40,13): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/client.d.ts(11,39): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/client.d.ts(18,42): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/client.d.ts(19,22): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/highlight_delay_barrier.d.ts(17,43): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/simple_webdriver_client.d.ts(14,47): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/simple_webdriver_client.d.ts(21,52): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/simple_webdriver_client.d.ts(29,56): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/simple_webdriver_client.d.ts(37,52): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/webdriver_proxy.d.ts(14,90): error TS2304: Cannot find name 'Promise'.
node_modules/blocking-proxy/built/lib/webdriver_proxy.d.ts(23,43): error TS2304: Cannot find name 'Promise'.
node_modules/protractor/built/plugins.d.ts(31,22): error TS2304: Cannot find name 'Promise'.
node_modules/protractor/built/plugins.d.ts(48,26): error TS2304: Cannot find name 'Promise'.
node_modules/protractor/built/plugins.d.ts(62,25): error TS2304: Cannot find name 'Promise'.
node_modules/protractor/built/plugins.d.ts(76,28): error TS2304: Cannot find name 'Promise'.
node_modules/protractor/built/plugins.d.ts(94,55): error TS2304: Cannot find name 'Promise'.
e2e/app/framework/element functions.ts(43,29):错误TS2349:无法调用其类型缺少调用签名的表达式。
e2e/app/framework/wait functions.ts(45,18):错误TS2345:类型为“Function”的参数不能分配给类型为“Promise | Condition |”((驱动程序:WebDriver)=>{})的参数。
类型“函数”不可分配给类型“(驱动程序:WebDriver)=>{}”。
类型“Function”与签名(驱动程序:WebDriver):{}不匹配
node_modules/blocking proxy/build/lib/angular_wait_barrier.d.ts(43,43):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/blockingproxy.d.ts(40,13):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/client.d.ts(11,39):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/client.d.ts(18,42):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/client.d.ts(19,22):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/highlight_delay_barrier.d.ts(17,43):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/simple_webdriver_client.d.ts(14,47):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/simple_webdriver_client.d.ts(21,52):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/simple_webdriver_client.d.ts(29,56):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/simple_webdriver_client.d.ts(37,52):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/webdriver_proxy.d.ts(14,90):错误TS2304:找不到名称“Promise”。
node_modules/blocking proxy/build/lib/webdriver_proxy.d.ts(23,43):错误TS2304:找不到名称“Promise”。
节点_模块/量角器/内置/插件.d.ts(31,22):错误TS2304:找不到名称“Promise”。
节点\模块/量角器/内置/插件.d.ts(48,26):错误TS2304:找不到名称“Promise”。
节点_模块/量角器/内置/插件.d.ts(62,25):错误TS2304:找不到名称“Promise”。
节点_模块/量角器/内置/插件.d.ts(76,28):错误TS2304:找不到名称“Promise”。
节点_模块/量角器/内置/插件.d.ts(94,55):错误TS2304:找不到名称“Promise”。

是的,我看过这个。Webdriver管理器会感到困惑,并获取错误的版本。要修复此问题,请在本地(node_模块)和全局(如果您也有)量角器安装上运行此操作

  • node\u modules/.bin/webdriver manager clean//删除所有旧版本
  • node\u modules/.bin/webdriver管理器更新//获取最新信息

  • 谢谢@卤你的回复,是的,正如你所说,我能够更新到chromedriver的最新版本,但现在我开始得到不同的错误。现在还没开始呢。我正在用最新的错误更新问题。请看你是否能对此提出一些解决方案。这是一个不同的问题,你应该为它创建一个新的问题。否则它就污染了这个问题。