-
Notifications
You must be signed in to change notification settings - Fork 9
IE error not being excluded #6
Description
I'm getting this fail when running on saucelabs IE 11, windows 10:
Fail: protractor-console-plugin Plugin Tests
Failure during teardown: Command not found: POST /session/XXXXXXXX-XXXX-XXXX-XXXX-XXXX49177dd1/log
Command duration or timeout: 16 milliseconds
Build info: version: '2.48.0', revision: 'b7b081a', time: '2015-10-07 15:48:56'
System info: host: 'WIN-SB3ER6JQ6ME', ip: '172.20.37.62', os.name: 'Windows 8.1', os.arch: 'x86', os.version: '6.3', java.version: '1.8.0_51'
Driver info: org.openqa.selenium.ie.InternetExplorerDriver
Capabilities [{browserAttachTimeout=0, enablePersistentHover=true, ie.forceCreateProcessApi=false, pageLoadStrategy=normal, ie.usePerProcessProxy=false, ignoreZoomSetting=false, handlesAlerts=true, version=11, platform=WINDOWS, nativeEvents=true, ie.ensureCleanSession=false, elementScrollBehavior=0, ie.browserCommandLineSwitches=, requireWindowFocus=false, browserName=internet explorer, initialBrowserUrl=about:blank, takesScreenshot=true, javascriptEnabled=true, ignoreProtectedModeSettings=false, enableElementCacheCleanup=true, cssSelectorsEnabled=true, unexpectedAlertBehaviour=dismiss}]
Session ID: XXXXXXXX-XXXX-XXXX-XXXX-XXXX49177dd1
UnknownError: Command not found: POST /session/XXXXXXXX-XXXX-XXXX-XXXX-XXXX49177dd1/log
Command duration or timeout: 16 milliseconds
Build info: version: '2.48.0', revision: 'b7b081a', time: '2015-10-07 15:48:56'
System info: host: 'WIN-SB3ER6JQ6ME', ip: '172.20.37.62', os.name: 'Windows 8.1', os.arch: 'x86', os.version: '6.3', java.version: '1.8.0_51'
Driver info: org.openqa.selenium.ie.InternetExplorerDriver
Capabilities [{browserAttachTimeout=0, enablePersistentHover=true, ie.forceCreateProcessApi=false, pageLoadStrategy=normal, ie.usePerProcessProxy=false, ignoreZoomSetting=false, handlesAlerts=true, version=11, platform=WINDOWS, nativeEvents=true, ie.ensureCleanSession=false, elementScrollBehavior=0, ie.browserCommandLineSwitches=, requireWindowFocus=false, browserName=internet explorer, initialBrowserUrl=about:blank, takesScreenshot=true, javascriptEnabled=true, ignoreProtectedModeSettings=false, enableElementCacheCleanup=true, cssSelectorsEnabled=true, unexpectedAlertBehaviour=dismiss}]
Session ID: XXXXXXXX-XXXX-XXXX-XXXX-XXXX49177dd1
at new bot.Error (/home/dclifford/git/admin-portal/node_modules/protractor/node_modules/selenium-webdriver/lib/atoms/error.js:108:18)
at Object.bot.response.checkResponse (/home/dclifford/git/admin-portal/node_modules/protractor/node_modules/selenium-webdriver/lib/atoms/response.js:109:9)
at /home/dclifford/git/admin-portal/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:379:20
at [object Object].promise.Promise.goog.defineClass.invokeCallback_ (/home/dclifford/git/admin-portal/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/../webdriver/promise.js:1337:14)
at [object Object].promise.ControlFlow.goog.defineClass.goog.defineClass.abort_.error.executeNext_.execute_ (/home/dclifford/git/admin-portal/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/../webdriver/promise.js:2776:14)
at [object Object].promise.ControlFlow.goog.defineClass.goog.defineClass.abort_.error.executeNext_ (/home/dclifford/git/admin-portal/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/../webdriver/promise.js:2758:21)
at goog.async.run.processWorkQueue (/home/dclifford/git/admin-portal/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/async/run.js:124:15)
at process._tickCallback (node.js:366:9)
For whatever reason the exclude array is not properly excluding this log. Here's what I've tried so far in the exclude array of my config file:
'Command not found: POST /session/'
/Command not found: POST \/session\/
RegExp("Command not found: POST /session/")
RegExp(".\*Command not found: POST /session/.\*")
I tried debugging, but I can't seem to figure out what's going on. Any suggestions on how to fix this, or how I would go about debugging this plugin to see why exactly this is getting through the regex match?
I tried debugging by doing this (and several variations of trying to print things out, etc), but nothing seems to work:
ConsolePlugin.includeLog = function(logMessage) {
//return ConsolePlugin.exclude.filter(function(e) {
// return (e instanceof RegExp) ? logMessage.match(e) :
// logMessage.indexOf(e) > -1;
//}).length === 0;
return ConsolePlugin.exclude.filter(function(e) {
return (e instanceof RegExp) ?
(! e.test(logMessage)) :
((logMessage.indexOf(e) > -1).length === 0);
});
};
I should also note, this error is being generated in the very last step of saucelabs, and not a POST that is being done by my web application, or manually through protractor. But saucelabs appears to force it on each run in the console.
Thanks!