我正在尝试按照教程进行操作https://docs.angularjs.org/tutorial https://docs.angularjs.org/tutorial并且运行命令时出错
npm run protractor
这是控制台日志:
Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft
公司。版权所有。
C:\GIT\Angular-practices\Angular-phonecat>npm run Protractor
[电子邮件受保护] /cdn-cgi/l/email-protection预量角器 C:\GIT\Angular-practices\Angular-phonecat
npm 运行 update-webdriver
[电子邮件受保护] /cdn-cgi/l/email-protectionpreupdate-webdriver C:\GIT\Angular-practices\Angular-phonecat
npm 安装
[电子邮件受保护] /cdn-cgi/l/email-protection安装后 C:\GIT\Angular-practices\Angular-phonecat
凉亭安装
[电子邮件受保护] /cdn-cgi/l/email-protection更新-webdriver C:\GIT\Angular-practices\Angular-phonecat
webdriver-manager 更新
selenium 独立版是最新的。 chromedriver 是最新的。
[电子邮件受保护] /cdn-cgi/l/email-protection量角器 C:\GIT\Angular-practices\Angular-phonecat
量角器测试/protractor-conf.js
util.puts:使用console.log代替直接使用ChromeDriver...
错误:生成未知
在exports._errnoException(util.js:746:11)
在 ChildProcess.spawn (child_process.js:1162:11)
在 Exports.spawn (child_process.js:995:9)
在 C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\remote\index.js:173:23
在 C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\lib\goog\base.js:1243:15
在 [object Object].webdriver.promise.ControlFlow.runInNewFrame_ (C:\GIT\angular-practices\angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:1539:20)
在通知处 (C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:362:12)
在 [object Object].then (C:\GIT\angular-practices\angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:414:7)
在 Object.webdriver.promise.when (C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:639:18)
在 C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\remote\index.js:172:20
==== 异步任务 ==== WebDriver.createSession()
在 Function.webdriver.WebDriver.acquireSession_ (C:\GIT\angular-practices\angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\webdriver.js:131:49)
在 Function.webdriver.WebDriver.createSession (C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\webdriver.js:111:30)
在 Object.createDriver (C:\GIT\angular-practices\angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver\chrome.js:460:30)
在 ChromeDriverProvider.getDriver (C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\lib\driverProviders\chrome.js:67:27)
在 C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\lib\runner.js:221:35
在 _fulfilled (C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\q\q.js:797:54)
在 self.promiseDispatch.done (C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\q\q.js:826:30)
在 Promise.promise.promiseDispatch (C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\q\q.js:759:13)
在 C:\GIT\Angular-practices\Angular-phonecat\node_modules\protractor\node_modules\q\q.js:525:49
你能告诉我问题出在哪里吗?
这是我的量角器conf.js:
exports.config = {
allScriptsTimeout: 11000,
specs: [
'e2e/*.js'
],
capabilities: {
'browserName': 'chrome'
},
chromeOnly: true,
baseUrl: 'http://localhost:8000/',
framework: 'jasmine',
jasmineNodeOpts: {
defaultTimeoutInterval: 30000
}
};
对于使用 Mac 并收到此错误的用户,以下未解决的问题可能会导致此问题:https://github.com/angular/webdriver-manager/issues/476 https://github.com/angular/webdriver-manager/issues/476
该解决方案由ciekawy提供。
在
node_modules/webdriver-manager/built/lib/files/file_manager.js
or
node_modules/protractor/webdriver-manager/built/lib/files/file_manager.js
在第166行添加以下代码:
fileUrl.url = fileUrl.url.replace(/_m1/, '');
然后,您需要更新 chrome 驱动程序才能应用更改。如果使用 NRWL 的 NX monorepo 管理工具:
npx webdriver-manager clean
npx webdriver-manager update --gecko=false --versions.chrome=<version from chrome://versions>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)