How can I configure the firefox binary location in Protractor?
UPDATED: See newer answer below: https://stackoverflow.com/a/28313583/800699
It seems you have to start the Selenium Server by yourself with custom arguments for firefox driver. See Protractor test is not starting on Firefox
More options for firefox driver (including custom firefox binary location) can be found here: https://code.google.com/p/selenium/wiki/FirefoxDriver
P/S: Browsing the firefox driver source reveals more light: https://code.google.com/p/selenium/source/browse/javascript/node/selenium-webdriver/firefox/index.js
You can try adding:
"browserName": "firefox",
"firefox_binary": "path/to/custom/firefox",
"binary_": "path/to/custom/firefox"
Protractor now supports setting the firefoxPath directly in the configuration file, when using "direct connect" (i.e., without a selenium server). See the reference config file:
https://github.com/angular/protractor/blob/master/docs/referenceConf.js#L67
Add firefoxPath
to the config file, at the top-level. It is a string that should be the path to your firefox binary. You will also need directConnect: true
in the config.
For more details (handy to see all the doc that changed at once) check out the change that added this support (in Oct 2014).
It's 2018 and it appears you can set a specific binary
argument within the 'moz:firefoxOptions'
section of the capabilities like so:
capabilities: {
browserName: 'firefox',
'moz:firefoxOptions': {
args: [...Your args here...],
binary: '/Path/To/Custom/firefox'
}
}
Disclaimer: I ran this with directConnect: true
in my protractor config also. I'm not sure if it works if you're passing the command to the Selenium server.
Reference: https://github.com/mozilla/geckodriver/blob/master/README.md#mozfirefoxoptions