I can not start the test with protractor on firefox version 56.0.1. my protractor version is 5.1.2
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./e2e/**/*.e2e-spec.ts'
],
capabilities: {
'browserName': 'firefox'
},
directConnect: true,
baseUrl: 'http://localhost:4444/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
};
this is the error:
[00:02:20] I/launcher - Running 1 instances of WebDriver
[00:02:20] I/direct - Using FirefoxDriver directly...
[00:02:27] E/launcher - Unable to parse new session response: {"value": {"sessionId":"e9d08604-1d7e-4870-85d7-4e09a2248ffa","capabilities":{"acceptInsecureCerts":false,"browserName":"firefox","browserVersion":"56.0.1","moz:accessibilityChecks":false,"moz:headless":false,"moz:processID":5804,"moz:profile":"C:\\Users\\s\\AppData\\Local\\Temp\\rust_mozprofile.sWpsKwszgKSw","pageLoadStrategy":"normal","platformName":"windows_nt","platformVersion":"6.1","rotatable":false,"specificationLevel":0,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000}}}}
[00:02:27] E/launcher - WebDriverError: Unable to parse new session response: {"value": {"sessionId":"e9d08604-1d7e-4870-85d7-4e09a2248ffa","capabilities":{"acceptInsecureCerts":false,"browserName":"firefox","browserVersion":"56.0.1","moz:accessibilityChecks":false,"moz:headless":false,"moz:processID":5804,"moz:profile":"C:\\Users\\s\\AppData\\Local\\Temp\\rust_mozprofile.sWpsKwszgKSw","pageLoadStrategy":"normal","platformName":"windows_nt","platformVersion":"6.1","rotatable":false,"specificationLevel":0,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000}}}}
at WebDriverError (C:\Users\s\WebstormProjects\Co\node_modules\selenium-webdriver\lib\error.js:27:5)
at doSend.then.response (C:\Users\s\WebstormProjects\Common_IDE\node_modules\selenium-webdriver\lib\http.js:445:19)
at process._tickCallback (internal/process/next_tick.js:109:7)
From: Task: WebDriver.createSession()
at Function.createSession (C:\Users\s\WebstormProjects\Co\node_modules\selenium-webdriver\lib\webdriver.js:777:24)
at Function.createSession (C:\Users\s\WebstormProjects\Co\node_modules\selenium-webdriver\firefox\index.js:640:55)
at Direct.getNewDriver (C:\Users\s\WebstormProjects\Co\node_modules\protractor\lib\driverProviders\direct.ts:112:25)
at Runner.createBrowser (C:\Users\s\WebstormProjects\Co\node_modules\protractor\lib\runner.ts:225:39)
at q.then.then (C:\Users\s\WebstormProjects\Co\node_modules\protractor\lib\runner.ts:391:27)
at _fulfilled (C:\Users\s\WebstormProjects\Co\node_modules\protractor\node_modules\q\q.js:834:54)
at self.promiseDispatch.done (C:\Users\s\WebstormProjects\Co\node_modules\protractor\node_modules\q\q.js:863:30)
at Promise.promise.promiseDispatch (C:\Users\saeed\WebstormProjects\Co\node_modules\protractor\node_modules\q\q.js:796:13)
at C:\Users\s\WebstormProjects\Co\node_modules\protractor\node_modules\q\q.js:556:49
at runSingle (C:\Users\s\WebstormProjects\Co\node_modules\protractor\node_modules\q\q.js:137:13)
[00:02:27] E/launcher - Process exited with error code 199
do you have any idea how to solve this problem . (it it work normally with chrome but shows empty page with firefox)
With geckodriver, you'll need to add marionette to the capabilities:
capabilities: {
'browserName': 'firefox',
'marionnette': true
},
UPDATE: There is a open issue #4253 introduced in Protractor 5.1.1 . The workaround is to manually replace directConnect
with seleniumAddress
and manually start webdriver-manager
as specified in the bug:
The solution is to use selenium standalone when testing with Firefox. The latest version of the selenium standalone server is compatible with Protractor's selenium JS bindings and with geckodriver. You can update and launch the standalone server with
webdriver-manager update webdriver-manager start
and set
seleniumAddress: http://localhost:4444