chromedriver 版本(如 76.0.3809.12)的量角器问题
为新的 chromedriver 版本(如 76.0.3809.68)运行 conf.js 文件时出现量角器问题
Protractor issue while running the conf.js file for new chromedriver versions like 76.0.3809.68
我正在尝试在今天更新的最新 chrome 版本 76.0.3809.100 上运行量角器测试,但它们一直失败并给出错误.我拥有的版本是量角器版本:5.4.2,网络驱动程序版本:12.1.6,可用的硒独立版本:3.141.59可用的 chromedriver 版本:2.46 [last]、76.0.3809.12geckodriver 可用版本:v0.24.0 [last]
I am trying to run the protractor tests on latest chrome version which got updated today 76.0.3809.100 but they keep failing and giving error. The versions that i have are protractor version: 5.4.2, webdriver-version: 12.1.6, selenium standalone version available: 3.141.59 chromedriver versions available: 2.46 [last], 76.0.3809.12 geckodriver version available: v0.24.0 [last]
我尝试使用 webdriver-manager update 更新 webdriver manager 来更新 chrome 驱动程序,也尝试重新安装 webdriver-manager 并安装特定版本的 webdriver,但似乎没有任何工作.我还尝试安装较低版本的 chrome,即 75,但每次我尝试安装最新版本时.测试在更新后停止工作之前运行良好.任何有关此问题的帮助/建议都会非常有帮助.
I have tried updating the webdriver manager using webdriver-manager update to update the chrome driver, have also tried to reinstall the webdriver-manager and insatll a specific version of webdriver but nothing seems to be working. I also tried to install a lower version of chrome i.e 75 but everytime i try it installs the latest version instead. The tests were running fine before just after the update they stopped working. Any help / suggestion regarding this issue would be really helpful.
这是抛出的错误:
E/launcher - session not created: Chrome version must be between 71 and 75
(Driver info: chromedriver=2.46.628402 (536cd7adbad73a3783fdc2cab92ab2ba7ec361e1),platform=Windows NT 10.0.17763 x86_64)
[15:08:03] E/launcher - SessionNotCreatedError: session not created: Chrome version must be between 71
and 75
(Driver info: chromedriver=2.46.628402 (536cd7adbad73a3783fdc2cab92ab2ba7ec361e1),platform=Windows NT 10.0.17763 x86_64)
at Object.checkLegacyResponse (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\error.js:546:15)
at parseHttpResponse (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\http.js:509:13)
at doSend.then.response (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\http.js:441:30)
at process._tickCallback (internal/process/next_tick.js:68:7)
From: Task: WebDriver.createSession()
at Function.createSession (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:769:24)
at Function.createSession (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\chrome.js:761:15)
at Direct.getNewDriver (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\built\driverProviders\direct.js:77:33)
at Runner.createBrowser (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\built\runner.js:195:43)
at q.then.then (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\built\runner.js:339:29)
at _fulfilled (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:834:54)
at C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:863:30
at Promise.promise.promiseDispatch (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:796:13)
at C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:556:49
at runSingle (C:\Users\gmangat\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:137:13)
[15:08:03] E/launcher - Process exited with error code 199
这是我的 conf.js 文件exports.config = {
This is my conf.js file exports.config = {
directConnect: true,
multiCapabilities: [{
browserName: 'chrome',
acceptInsecureCerts: true,
'specs': [
//e2e Specs
'./src/e2e/shared/specs/LoginTest.e2e.spec.js',
'./src/api/unified-message-api/specs/createUMTask.js',
],
chromeOptions: {
args: ['--disable-infobars', '--disable-browser-side-navigation'],
prefs: {
'profile.managed_default_content_settings.notifications': 1
}
},
}],
framework: 'jasmine2',
SELENIUM_PROMISE_MANAGER: true,
onPrepare: function () {
browser.ignoreSynchronization = true;
browser.driver.manage().timeouts().implicitlyWait(5000);
browser.driver.manage().window().setSize(1280, 1024);
//npm install jasmine-spec-reporter --save-dev
var specReporter = require('jasmine-spec-reporter').SpecReporter;
jasmine.getEnv().addReporter(new specReporter({
displayFailuresSummary: true,
displayFailuredSpec: true,
displaySuiteNumber: true,
displaySpecDuration: true
}));
var AllureReporter = require('jasmine-allure-reporter');
jasmine.getEnv().addReporter(new AllureReporter({
resultsDir: 'allure-results'
}));
jasmine.getEnv().afterEach(function (done) {
browser.takeScreenshot().then(function (png) {
allure.createAttachment('Screenshot', function () {
return new Buffer(png, 'base64')
}, 'image/png')();
done();
})
});
},
jasmineNodeOpts: {
defaultTimeInterval: 6000000
}
};
/* Version Used:
Node: 10.15.3
Protractor : 5.4.2
npm i protractor@5.4.2
*/
对我有用的解决方案是导航到 ./node_modules/protractor
并运行 npm i webdriver-manager@latest代码>.
The solution that worked for me was navigating to ./node_modules/protractor
and running npm i webdriver-manager@latest
.
然后返回应用根目录并运行 webdriver-manager update
,这次它应该下载 v76 驱动程序.
Then go back to the app root and run webdriver-manager update
and this time it should download the v76 driver.