webdriverjs-angular
Functional test you angularjs application without having to .pause()
or .wait()
.
Based on WebdriverIO, you access
the same API commands but you never have to .pause()
between actions.
Usage
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| var webdriverjsAngular = require('webdriverjs-angular'); var options = { desiredCapabilities: { browserName: 'chrome' }, ngRoot: 'body' };
webdriverjsAngular .remote(options) .init() .url('http://www.google.com') .title(function(err, res) { console.log('Title was: ' + res.value); }) .end();
|
For more options, usage and API details, see
WebdriverIO.
Why another webdriverjs lib?
webdriverjs-angular is based on an existing lib, it’s extending
WebdriverIO.
webdriverjs-angular is designed to work well with angularJS applications.
AngularJS applications have a specific behavior that needs to be taken care
of to provide easy e2e testing.
How
webdriverjs-angular
automatically waits for angularjs to be ready.
So you just have to worry about what you want to do in your tests, not when
to do it.
Unlike angular/protractor or
sebv/wd-tractor,
we do not enhance WebdriverIO API with angularJS-related
command.
You will not find any elementByNgBinding
, addMockModule
,
hasElementByNgRepeaterRow
or any other specific, angularJS-related methods.
We think your functionnal tests should be as framework-agnostic as possible.
If you need elementByNgBinding
, just use regular
WebdriverIO
commands like .element('[ng-binding=model]')
.
Local testing
See test/spec.
1 2 3 4 5 6 7 8 9 10 11
| # you need multiple terminal window
# start a standalone selenium server npm install selenium-standalone phantomjs -g start-selenium
# start web server node test/app/scripts/web-server.js
# launch tests BROWSER=phantomjs npm test
|