How can I use command line arguments in Angularjs Protractor?
angularjs, javascript, protractor, selenium, webdriver
Solution
In the reference config this section can be interesting:
// The params object will be passed directly to the protractor instance,
// and can be accessed from your test. It is an arbitrary object and can
// contain anything you may need in your test.
// This can be changed via the command line as:
// --params.login.user 'Joe'
params: {
login: {
user: 'Jane',
password: '1234'
}
},
And you can access the params object like this in your code: `browser.params.login.user`
So in your case if you call protractor like this:
protractor ... --params.login.user=abc --params.login.password=123
You can access these variables in your code like this:
`browser.params.login.user` and `browser.params.login.password`
Problem
I'm using Protractor to perform some end to end tests, and I'd like to pass in login credentials through the command line instead of storing them in a spec file. I found one post where someone used `process.argv.forEach`, but how can I store those values and use them in another spec file? I have a file called `login-spec.js` where I'd like to use the command-line arguments. Thanks!