如何在角度量角器中降级Chrome WebDriver [英] How to downgrade Chrome WebDriver in angular Protractor
问题描述
我正在尝试使用chrome作为浏览器在Angular 7上运行 ng e2e
.我运行了 npm install -g protractor
和 webdriver-manager update
命令.它最终下载并运行chromedriver = 76.0.3809.12,但是我无法在自己的计算机上更新chrome本身.我在chrome 74上.
我尝试过 webdriver-manger更新
, webdriver-manager更新--versions.chrome 2.46
,以及 webdriver-manager更新--versions.chrome 74.0.3729.6
但即使我去 node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \
中删除chrome 76文件,但每次运行 ng e2e
protractor.conf.js
exports.config = {allScriptsTimeout:11000,眼镜: ['./src/**/*.e2e-spec.ts'],功能:{'browserName':'chrome'},directConnect:是的,baseUrl:'http://localhost:4200/',框架:茉莉花",jasmineNodeOpts:{showColors:true,defaultTimeoutInterval:30000,打印:function(){}},onPrepare(){require('ts-node').register({项目:require('path').join(__ dirname,'./tsconfig.e2e.json')});jasmine.getEnv().addReporter(new SpecReporter({spec:{displayStacktrace:true}})));}};
tsconfig.e2e.json
<代码> {"extends":"../tsconfig.json","compilerOptions":{"outDir":"../out-tsc/app","module":"commonjs","target":"es5",类型":[茉莉花"jasminewd2",节点"]}}
当我尝试运行 ng e2e
时,抛出此错误:
E/启动器-未创建会话:此版本的ChromeDriver仅支持Chrome版本76(驱动程序信息:chromedriver = 76.0.3809.12(220b19a666554bdcac56dff9ffd44c300842c933-refs/branch-heads/3809 @ {#83}),平台= Windows NT 10.0.16299 x86_64)E/启动器-进程退出,错误代码199发生意外错误:未定义
更新:当我运行 webdriver-manager clean
和 node node_modules/protractor/bin/webdriver-manager update --standalone --versions.standalone = 3.8.0
时,它仍然下载了chrome 76这是第二个命令的输出以及clean之后的ng e2e
节点node_modules/protractor/bin/webdriver-manager更新-独立-
versions.standalone = 3.8.0[06:59:13] I/config_source-curl -oM:.\ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \ standalone-response.xml https://selenium-release.storage.googleapis.com/[06:59:13] I/config_source-curl -oM:.\ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \ chrome-response.xml https://chromedriver.storage.googleapis.com/[06:59:13] I/config_source-curl -oM:.\ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \ gecko-response.json https://api.github.com/repos/mozilla/geckodriver/发布[06:59:14] I/下载程序-curl -oM:.\ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium/selenium-server-standalone-3.8.0.jar https://selenium-release.storage.googleapis.com/3.8/selenium-server-standalone-3.8.0.jar[06:59:14]我/更新-chromedriver:文件存在M:.\ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \ chromedriver_76.0.3809.12.zip[06:59:14]我/更新-chromedriver:解压缩chromedriver_76.0.3809.12.zip[06:59:14] I/更新-chromedriver:最新的chromedriver_76.0.3809.12.exe[06:59:14]我/更新-geckodriver:文件存在M:.\ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \ geckodriver-v0.24.0.zip[06:59:14] I/update-geckodriver:解压缩geckodriver-v0.24.0.zip[06:59:15] I/update-geckodriver:最新的geckodriver-v0.24.0.exe
ng e2e
i「wdm」:编译成功.[07:00:51] I/更新-chromedriver:文件存在M:.\ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \ chromedriver_76.0.3809.12.zip[07:00:51]我/更新-chromedriver:解压缩chromedriver_76.0.3809.12.zip[07:00:52]我/更新-chromedriver:最新的chromedriver_76.0.3809.12.exe[07:00:54] I/启动器-运行1个WebDriver实例[07:00:54] I/direct-直接使用ChromeDriver ...[9224:10012:0612/070058.684:ERROR:configuration_policy_handler_list.cc(90)]未知策略:EnableCommonNameFallbackForLocalAnchors[9224:10012:0612/070058.869:ERROR:configuration_policy_handler_list.cc(90)]未知策略:EnableCommonNameFallbackForLocalAnchors在ws://127.0.0.1:5007/devtools/browser/376b234b-f47d-4841-afdc-77719714db23上监听的DevTools[07:01:05] E/启动程序-未创建会话:此版本的ChromeDriver仅支持Chrome版本76(驱动程序信息:chromedriver = 76.0.3809.12(220b19a666554bdcac56dff9ffd44c300842c933-refs/branch-heads/3809 @ {#83}),平台= Windows NT 10.0.16299 x86_64)[07:01:05] E/启动程序-SessionNotCreatedError:未创建会话:此版本的ChromeDriver仅支持Chrome版本76(驱动程序信息:chromedriver = 76.0.3809.12(220b19a666554bdcac56dff9ffd44c300842c933-refs/branch-heads/3809 @ {#83}),平台= Windows NT 10.0.16299 x86_64)
package.json
"private":是的,依赖关系":{"@ angular/animations":"^ 7.2.14","@ angular/cdk":"^ 7.3.7","@ angular/common":"^ 7.2.14","@ angular/compiler":"^ 7.2.14","@ angular/core":"^ 7.2.14","@ angular/forms":"^ 7.2.14","@ angular/http":"^ 7.2.14","@ angular/material":"^ 7.3.7","@ angular/platform-browser":"^ 7.2.14","@ angular/platform-browser-dynamic":"^ 7.2.14","@ angular/platform-server":"^ 7.2.14","@ angular/router":"^ 7.2.14","core-js":"^ 2.5.7","rxjs":"^ 6.5.2","rxjs-compat":"^ 6.5.1","zone.js":"^ 0.8.29"},"devDependencies":{"@ angular-devkit/build-angular":"^ 0.13.8","@ angular/cli":"^ 7.3.8","@ angular/compiler-cli":"^ 7.2.14","@ angular/language-service":"^ 7.2.14","@ types/jasmine":"^ 3.3.12","@ types/jasminewd2":〜2.0.3","@ types/node":"^ 11.13.8","codelyzer":"^ 5.0.1",茉莉花芯":"^ 3.4.0","jasmine-spec-reporter":"^ 4.2.1",业力":"^ 4.1.0","karma-chrome-launcher":"^ 2.2.0","karma-cli":"^ 2.0.0",业报-伊斯坦布尔报道":〜2.0.0",业力茉莉花":"^ 2.0.1","karma-jasmine-html-reporter":"^ 1.4.2",量角器":"^ 5.4.2","rxjs-tslint":"^ 0.1.7","ts-node":〜5.0.1","tslint":"^ 5.16.0","typescript":< 3.3.0","webpack":"^ 4.30.0"}
尝试以下选项
webdriver-manager clean//将清除现有的webdriver节点node_modules/protractor/bin/webdriver-manager更新--standalone --versions.standalone = 3.8.0
I am trying to run ng e2e
on Angular 7 with chrome as the browser. I ran the commands npm install -g protractor
and webdriver-manager update
. It ends up downloading and running chromedriver=76.0.3809.12 but it is not possible for me to update chrome itself on my machine. I am on chrome 74.
I have tried
webdriver-manger update
,
webdriver-manager update --versions.chrome 2.46
, and
webdriver-manager update --versions.chrome 74.0.3729.6
but even if I go and delete the chrome 76 files from node_modules\protractor\node_modules\webdriver-manager\selenium\
but they always reinstall everytime I run ng e2e
protractor.conf.js
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./src/**/*.e2e-spec.ts'
],
capabilities: {
'browserName': 'chrome'
},
directConnect: true,
baseUrl: 'http://localhost:4200/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
onPrepare() {
require('ts-node').register({
project: require('path').join(__dirname, './tsconfig.e2e.json')
});
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
}
};
tsconfig.e2e.json
{
"extends": "../tsconfig.json",
"compilerOptions": {
"outDir": "../out-tsc/app",
"module": "commonjs",
"target": "es5",
"types": [
"jasmine",
"jasminewd2",
"node"
]
}
}
when I attempt to run ng e2e
it throws this error:
E/launcher - session not created: This version of ChromeDriver only supports Chrome version 76
(Driver info: chromedriver=76.0.3809.12 (220b19a666554bdcac56dff9ffd44c300842c933-refs/branch-heads/3809@{#83}),platform=Windows NT 10.0.16299 x86_64)
E/launcher - Process exited with error code 199
An unexpected error occurred: undefined
UPDATE:
when I ran webdriver-manager clean
and node node_modules/protractor/bin/webdriver-manager update --standalone --versions.standalone=3.8.0
it still downloaded chrome 76 here is the output of the second command and ng e2e after the clean
node node_modules/protractor/bin/webdriver-manager update --standalone --
versions.standalone=3.8.0
[06:59:13] I/config_source - curl -oM:.\node_modules\protractor\node_modules\webdriver-manager\selenium\standalone-response.xml https://selenium-release.storage.googleapis.com/
[06:59:13] I/config_source - curl -oM:.\node_modules\protractor\node_modules\webdriver-manager\selenium\chrome-response.xml https://chromedriver.storage.googleapis.com/
[06:59:13] I/config_source - curl -oM:.\node_modules\protractor\node_modules\webdriver-manager\selenium\gecko-response.json https://api.github.com/repos/mozilla/geckodriver/releases
[06:59:14] I/downloader - curl -oM:.\node_modules\protractor\node_modules\webdriver-manager\selenium/selenium-server-standalone-3.8.0.jar https://selenium-release.storage.googleapis.com/3.8/selenium-server-standalone-3.8.0.jar
[06:59:14] I/update - chromedriver: file exists M:.\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_76.0.3809.12.zip
[06:59:14] I/update - chromedriver: unzipping chromedriver_76.0.3809.12.zip
[06:59:14] I/update - chromedriver: chromedriver_76.0.3809.12.exe up to date
[06:59:14] I/update - geckodriver: file exists M:.\node_modules\protractor\node_modules\webdriver-manager\selenium\geckodriver-v0.24.0.zip
[06:59:14] I/update - geckodriver: unzipping geckodriver-v0.24.0.zip
[06:59:15] I/update - geckodriver: geckodriver-v0.24.0.exe up to date
ng e2e
i 「wdm」: Compiled successfully.
[07:00:51] I/update - chromedriver: file exists M:.\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_76.0.3809.12.zip
[07:00:51] I/update - chromedriver: unzipping chromedriver_76.0.3809.12.zip
[07:00:52] I/update - chromedriver: chromedriver_76.0.3809.12.exe up to date
[07:00:54] I/launcher - Running 1 instances of WebDriver
[07:00:54] I/direct - Using ChromeDriver directly...
[9224:10012:0612/070058.684:ERROR:configuration_policy_handler_list.cc(90)] Unknown policy: EnableCommonNameFallbackForLocalAnchors
[9224:10012:0612/070058.869:ERROR:configuration_policy_handler_list.cc(90)] Unknown policy: EnableCommonNameFallbackForLocalAnchors
DevTools listening on ws://127.0.0.1:5007/devtools/browser/376b234b-f47d-4841-afdc-77719714db23
[07:01:05] E/launcher - session not created: This version of ChromeDriver only supports Chrome version 76
(Driver info: chromedriver=76.0.3809.12 (220b19a666554bdcac56dff9ffd44c300842c933-refs/branch-heads/3809@{#83}),platform=Windows NT 10.0.16299 x86_64)
[07:01:05] E/launcher - SessionNotCreatedError: session not created: This version of ChromeDriver only supports Chrome version 76
(Driver info: chromedriver=76.0.3809.12 (220b19a666554bdcac56dff9ffd44c300842c933-refs/branch-heads/3809@{#83}),platform=Windows NT 10.0.16299 x86_64)
package.json
"private": true,
"dependencies": {
"@angular/animations": "^7.2.14",
"@angular/cdk": "^7.3.7",
"@angular/common": "^7.2.14",
"@angular/compiler": "^7.2.14",
"@angular/core": "^7.2.14",
"@angular/forms": "^7.2.14",
"@angular/http": "^7.2.14",
"@angular/material": "^7.3.7",
"@angular/platform-browser": "^7.2.14",
"@angular/platform-browser-dynamic": "^7.2.14",
"@angular/platform-server": "^7.2.14",
"@angular/router": "^7.2.14",
"core-js": "^2.5.7",
"rxjs": "^6.5.2",
"rxjs-compat": "^6.5.1",
"zone.js": "^0.8.29"
},
"devDependencies": {
"@angular-devkit/build-angular": "^0.13.8",
"@angular/cli": "^7.3.8",
"@angular/compiler-cli": "^7.2.14",
"@angular/language-service": "^7.2.14",
"@types/jasmine": "^3.3.12",
"@types/jasminewd2": "~2.0.3",
"@types/node": "^11.13.8",
"codelyzer": "^5.0.1",
"jasmine-core": "^3.4.0",
"jasmine-spec-reporter": "^4.2.1",
"karma": "^4.1.0",
"karma-chrome-launcher": "^2.2.0",
"karma-cli": "^2.0.0",
"karma-coverage-istanbul-reporter": "~2.0.0",
"karma-jasmine": "^2.0.1",
"karma-jasmine-html-reporter": "^1.4.2",
"protractor": "^5.4.2",
"rxjs-tslint": "^0.1.7",
"ts-node": "~5.0.1",
"tslint": "^5.16.0",
"typescript": "<3.3.0",
"webpack": "^4.30.0"
}
Try the below option
webdriver-manager clean // This will clean the existing webdrivers
node node_modules/protractor/bin/webdriver-manager update --standalone --versions.standalone=3.8.0
这篇关于如何在角度量角器中降级Chrome WebDriver的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!