Bal*_* .Y 31 angularjs protractor
当我运行量角器时,我得到以下错误.以下是我的webstorm控制台中显示的错误.
"C:\ Program Files(x86)\ JetBrains\WebStorm 2016.2\bin\runnerw.exe""C:\ Program Files \nodejs \node.exe"c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor\built\cli.js C:\ Users\x216526\workspace_Protractor\SWA_Protractor\conf.js [17:59:58]我/直接 - 直接使用ChromeDriver ... [17:59:58] I/launcher - 运行1 WebDriver的实例[18:00:01] E/launcher - 会话未创建未知错误的异常:Runtime.executionContextCreated具有无效的'context':{"auxData":{"frameId":"9784.1","isDefault":true },"id":1,"name":"","origin":"://"}(会话信息:chrome = 54.0.2824.0)(驱动程序信息:chromedriver = 2.22.397933(1cab651507b88dec79b2b2a22d1943c01833cc1b),platform = Windows NT 6.1.7601 SP1 x86_64)[18:00:01] E/launcher - SessionNotCreatedError:会话未创建未知错误的异常:Runtime.executionContextCreated具有无效的'context':{"auxData":{"frameId":"9784.1 ","isDefault":true},"id":1,"name":"","origin":"://"}(会话信息:chrome = 54.0.2824.0)(驱动程序信息:在WebDriverError上的chromedriver = 2.22.397933(1cab651507b88dec79b2b2a22d1943c01833cc1b),platform = Windows NT 6.1.7601 SP1 x86_64)(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\lib\error.js :26:26)在Object.checkLegacyResponse(c:\ Users)的SessionNotCreatedError(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\lib\error.js:307:26)\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\lib\error.js:639:15)at parseHttpResponse(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\http\index.js:538:13)在ManagedPromise的c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\http\index.js:472:11在TaskQueue.execute_(c:\ Users\x216526\AppData \).invokeCallback_(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\lib\promise.js:1379:14)漫游\故宫\node_mo dules\protractor \node_modules\selenium-webdriver\lib\promise.js:2913:14)在TaskQueue.executeNext_(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\lib\promise.js:2896:21)c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\lib\promise.js:2820:25 at c:\ Users\x216526\AppData \漫游\npm \node_modules\protractor \node_modules\selenium-webdriver\lib\promise.js:639:7来自:任务:Function.createSession中的WebDriver.createSession()(c:\ Users\x216526\AppData\Roaming \npm驱动程序中的\node_modules\protractor \node_modules\selenium-webdriver\lib\webdriver.js:329:24)(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\selenium-webdriver\chrome.js :778:38)在Runner.createBrowser(c:\ Users\x216526)的Direct.getNewDriver(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor\built\driverProviders\direct.js:68:26)\AppData\Roaming \npm \node_modules\protractor\built\runner.js:187:43)at c:\ Us ers\x216526\AppData\Roaming \npm \node_modules\protractor\built\runner.js:261:30 at _fulfilled(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\q\q.js :834:54)在Promise.promise.promiseDispatch的self.promiseDispatch.done(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\q\q.js:863:30)中(c:\Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\q\q.js:796:13)at c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\q\q .js:556:49 at runSingle(c:\ Users\x216526\AppData\Roaming \npm \node_modules\protractor \node_modules\q\q.js:137:13)[18:00:01] E/launcher - " process.on('uncaughtException'"错误,请参阅启动程序[18:00:01] E/launcher - 已退出并显示错误代码199已完成退出代码199
我的配置js如下所示:
exports.config = {
directConnect: true, // Capabilities to be passed
//to the webdriver instance.
capabilities: { 'browserName': 'chrome', },
framework: 'jasmine2',
specs: ['./src/sli_sanitytests/San1_Check_
Sli_Homepage_is_Accessible_spec.js',
'./src/sli_sanitytests/San2_
Click_createButton_to_Open_Sli_CreateForm_page_spec.js',
'./src/sli_sanitytests/San3_
Create_Sli_reference_spec.js' ],
suites: {
smoke: ['./smoke/!*.spec.js'],
regression:['./regression/!*.spec.js'],
functional: ['./functional/!*.spec.js'],
all: ['./!*!/!*.spec.js'],
selected:['./functional/addcustomer.spec.js',
'./regression/openaccount.spec.js'],
},
// Options to be passed to Jasmine
jasmineNodeOpts: {
//onComplete will be called just before the driver quits.
onComplete: null,
// If true, display spec names.
isVerbose: true, // If true,print colors to the terminal.
showColors: true, // If true, include stack traces in
//failures.
includeStackTrace: true, // Default time to wait in ms
//before a test fails.
defaultTimeoutInterval: 80000
},
//enter code here
onPrepare:function() {
browser.ignoreSynchronization = true;
browser.driver.manage().window().maximize();
},
}
Run Code Online (Sandbox Code Playgroud)
Sea*_*ean 40
2016-10-13:ChromeDriver v2.24已发布,支持Chrome v52-54.(谢谢@Anton)
2016-08-16:最近对Chrome Dev频道的更新之一引入了一个阻止ChromeDriver正常启动的错误.刚刚解决了同样的问题,我建议您备份数据并恢复Chrome的Beta或Stable发布渠道.有关安全切换的详细信息,请参阅Chrome发布渠道.
或者,切换到DevD版ChromeDriver 也应该解决问题.从chromedriver项目的封闭问题:
Chrome开发者频道v54中有一些Devtool更改,目前Chromedriver stable v2.23不支持.您可能想要使用具有修复程序的开发版Chromedriver.它可以从下载
chromedriver…/continuous/….zip
查看完整链接的问题.
Jle*_*ner 14
如果最新的量角器没有最新的chromedriver,那么使用webdriver-manager更新它,请按照以下步骤操作
在文件config.json中输入最新的chromedriver版本此文件位于path / node_modules/protractor/node_modules/webdriver-manager/built下
可选(并在文件'chrome_driver.js'中将'mac32'更改为'mac64',它出现在path / webdriver-manager/built/lib/binaries下)
webdriver-manager update
在控制台中运行.
提示:要获取'webdriver-manager'文件夹的路径,请在命令后观察控制台webdriver-manager update
小智 6
由于我遇到了同样的问题并发现了这个问题,我想补充一点上下文:它确实是一个'旧的'chrome驱动程序(在我的情况下是2.22)和'更新'的chrome版本之间的版本问题(54在我的情况下)像肖恩回答.
但是,不需要手动调整配置文件或下载.
而是跑步
npm update protractor -g
Run Code Online (Sandbox Code Playgroud)
然后全局更新量角器
webdriver-manager update
Run Code Online (Sandbox Code Playgroud)
更新chrome驱动程序.在撰写本文时,较新的chrome驱动程序v2.25尚未包含在量角器包中(您将获得v2.24),但它适用于Chrome 54.在撰写本文时,Protractor是v4.09.同样的技巧也适用于未来的版本!
首先卸载你的chrome浏览器并重新安装。就是这样,量角器不会抛出任何此类错误。
我什至不知道为什么会发生这种情况,以及出于什么原因看起来有点奇怪,但唯一的解决方案是卸载 chrome 浏览器并重新安装。
npm 卸载 webdriver-manager -g npm 安装 webdriver-manager -g