Firefox profile for Nemo automation framework. nemo-firefox-profile
is a nemo-plugin written using firefox-profile-js.
Adds the feature to allow user to specify folder of customized profile
- Please install nemo to your project as described here: https://github.com/paypal/nemo/blob/master/README.md
- Add this plugin to your package.json dev dependencies ("nemo-firefox-profile": "~0.1.1")
- npm install
Add nemo-firefox-profile to your config/nemo-plugins.json file. Make sure priority<100
to allow plugin to register
before nemo initializes the driver
"firefox_profile": {
"module": "nemo-firefox-profile",
"priority": 99,
"register":true
}
You can put your firefox preferences as firefox_preferences
property under nemoData
environment variable like below,
"nemoData": {
"autoBaseDir": "<%=loopmocha.basedir%>", "targetBrowser": nconf.get("TARGET_BROWSER") || "firefox",
"firefox_preferences":{
"browser.download.folderList": 2,
"browser.download.dir": "/Users/nilesh",
"browser.helperApps.neverAsk.saveToDisk": "text/csv"
},
"serverCaps": {
}
}
You can use an existing firefox profile just by passing the path to the folder containing your profile.
"nemoData": {
"autoBaseDir": "<%=loopmocha.basedir%>", "targetBrowser": nconf.get("TARGET_BROWSER") || "firefox",
"firefoxDirectory": "/path/to/profile's folder",
"firefox_preferences":{
"browser.download.folderList": 2,
"browser.download.dir": "/Users/nilesh",
"browser.helperApps.neverAsk.saveToDisk": "text/csv"
},
"serverCaps": {
}
}
Once the plugin is configured correctly, nemo-firefox-profile would update "serverCaps" as below
"serverCaps": {
"firefox_profile": {zipped, base64 encoded string of the profile directory for use with remote WebDriver JSON wire protocol}
}