Skip to content
This repository has been archived by the owner on Jul 29, 2024. It is now read-only.

Standalone launch of Firefox (Gecko) fails to load browser with missing service #4501

Closed
bdellegrazie opened this issue Sep 22, 2017 · 4 comments · Fixed by #4502
Closed

Comments

@bdellegrazie
Copy link
Contributor

Bug report

Protractor is failing to set the webdriver.gecko.driver parameter when invoking selenium in standalone / local mode for use with Firefox.

  • Node Version: 6.11.3
  • Protractor Version: master (15776b8)
  • Angular Version: N/A
  • Browser(s): firefox
  • Operating System and Version Linux, Ubuntu 16.04
  • Your protractor configuration file
const config = {
  framework: 'jasmine2',
  useAllAngular2AppRoots: true,
  specs: [ join(__dirname, '../e2e/**/*.spec.ts') ],
  baseUrl: E2E_BASE_URL,
  allScriptsTimeout: 120000,
  getPageTimeout: 120000,
  jasmineNodeOpts: {
    defaultTimeoutInterval: 120000,
  },
  plugins: [
    {
      // Runs the axe-core accessibility checks each time the e2e page changes and
      // Angular is ready.
      path: '../tools/axe-protractor/axe-protractor.js'
    }
  ],
  capabilities: {
    browserName: 'firefox'
  },
  directConnect: false
}
  • A relevant example test
    N/A

  • Output from running the test

[10:35:08] Server started http://localhost:4200
[10:35:09] I/launcher - Running 1 instances of WebDriver
[10:35:09] I/local - Starting selenium standalone server...
[10:35:09] I/local - Selenium standalone server started at http://192.168.1.145:33133/wd/hub
[10:35:09] E/launcher - Unable to create new service: GeckoDriverService
Build info: version: '3.5.3', revision: 'a88d25fe6b', time: '2017-08-29T12:54:15.039Z'
System info: host: '<elided>', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '4.10.0-35-generic', java.version: '1.8.0_131'
Driver info: driver.version: unknown
[10:35:09] E/launcher - SessionNotCreatedError: Unable to create new service: GeckoDriverService
Build info: version: '3.5.3', revision: 'a88d25fe6b', time: '2017-08-29T12:54:15.039Z'
System info: host: '<elided>', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '4.10.0-35-generic', java.version: '1.8.0_131'
Driver info: driver.version: unknown
    at WebDriverError (node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:27:5)
    at SessionNotCreatedError (node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:214:5)
    at Object.checkLegacyResponse (node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:505:15)
    at parseHttpResponse (node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:509:13)
    at doSend.then.response (node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:440:13)
    at process._tickCallback (internal/process/next_tick.js:109:7)
From: Task: WebDriver.createSession()
    at Function.createSession (node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:777:24)
    at Function.createSession (node_modules/protractor/node_modules/selenium-webdriver/firefox/index.js:640:55)
    at createDriver (node_modules/protractor/node_modules/selenium-webdriver/index.js:167:33)
    at Builder.build (node_modules/protractor/node_modules/selenium-webdriver/index.js:629:16)
    at Local.getNewDriver (node_modules/protractor/built/driverProviders/driverProvider.js:53:33)
    at Runner.createBrowser (node_modules/protractor/built/runner.js:195:43)
    at q.then.then (node_modules/protractor/built/runner.js:339:29)
    at _fulfilled (node_modules/protractor/node_modules/q/q.js:834:54)
    at self.promiseDispatch.done (node_modules/protractor/node_modules/q/q.js:863:30)
    at Promise.promise.promiseDispatch (node_modules/protractor/node_modules/q/q.js:796:13)
[10:35:09] E/launcher - Process exited with error code 199
  • Steps to reproduce the bug
    protractor protractor.conf.js

  • The URL you are running your tests against (if relevant)
    N/A

bdellegrazie pushed a commit to CJSCommonPlatform/protractor that referenced this issue Sep 22, 2017
Always pass webdriver.gecko.driver property to Selenium if set in local
mode

fixes angular#4501
bdellegrazie pushed a commit to CJSCommonPlatform/protractor that referenced this issue Sep 22, 2017
Always pass webdriver.gecko.driver property to Selenium if set in local
mode

fixes angular#4501
@talolierwork
Copy link

Hitting that problem, waiting for that fix...

BTW, we wrote a small script which copies the gecko driver from the protractor node modeules.
We run it in the "pree2e": "./update_webdriver.sh" (in the package.json)
Here is the script:

Download selenium drivers

./node_modules/protractor/node_modules/webdriver-manager/bin/webdriver-manager update --versions.standalone 3.6.0

Copy the Gecko driver

driver_directory=./node_modules/protractor/node_modules/webdriver-manager/selenium
echo Looking for Gecko driver in: $driver_directory
filename=$(ls $driver_directory | grep '.geckodriver.[0-9]$' | sort | tail -1)
echo Lastest gecko driver found: $filename
cp $driver_directory/$filename ./geckodriver
echo Driver copied.

@agne-a-t
Copy link

Any idea when this will be fixed?

@victorhazbun
Copy link

This worked for me:

package.json

"devDependencies": {
  "webpack": "^3.10.0",
  "geckodriver": "^1.10.0",
  "selenium": "^2.20.0"
}

@IgorSasovets
Copy link
Contributor

It can be fixed using directConnect option, please take a look at https://github.com/IgorSasovets/geckodriver-windows-error.

bdellegrazie pushed a commit to CJSCommonPlatform/protractor that referenced this issue Mar 14, 2018
Always pass webdriver.gecko.driver property to Selenium if set in local
mode

fixes angular#4501
qiyigg pushed a commit that referenced this issue Jun 4, 2018
…4502)

Always pass webdriver.gecko.driver property to Selenium if set in local
mode. fixes #4501
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants