gulp-angular-protractor
Gulp plugin to run protractor tests with automatic launch and stop of the WebDriver server
Install
$ npm install --save-dev gulp-angular-protractor
Side dependencies
You should declare what expected version of protractor and webdriver manager you want to use:
{
"name": "example-gulp-protractor",
"version": "0.0.1",
"description": "",
"scripts": {
"gulp": "node node_modules/gulp/bin/gulp.js",
"test": "npm run gulp protractor"
},
"devDependencies": {
"gulp": "latest",
"gulp-angular-protractor": "latest",
"protractor": "4.0.11",
"webdriver-manager": "10.2.8"
}
}
Be carefull: some protractor and webdriver dependencies version required:
- Some specific node version
- Some specific npm version
- Some specific browser version
- ...
Usage
var gulp = require('gulp');
var angularProtractor = require('gulp-angular-protractor');
gulp.src(['./src/tests/*.js'])
.pipe(angularProtractor({
'configFile': 'test/protractor.config.js',
'args': ['--baseUrl', 'http://127.0.0.1:8000'],
'autoStartStopServer': true,
'debug': true
}))
.on('error', function(e) { throw e })
Full example
/*jshint node: true, camelcase: false*/
/*global require: true*/
'use strict';
var gulp = require('gulp'),
gulpProtractorAngular = require('gulp-angular-protractor');
// Setting up the test task
gulp.task('protractor', function(callback) {
gulp
.src(['example_spec.js'])
.pipe(gulpProtractorAngular({
'configFile': 'protractor.conf.js',
'debug': false,
'autoStartStopServer': true
}))
.on('error', function(e) {
console.log(e);
})
.on('end', callback);
});
API
angularProtractor(options)
options
options.autoStartStopServer
Type: Boolean
Default: true
If true, the plugin will update the WebDriver, launch the WebDriver server before launching tests and stop it at the end automatically
options.configFile
Type: String
Default: null
The path to your protractor config
options.args
Type: Array
Default: []
Arguments get passed directly to the protractor call Read the docs for more information
options.debug
Type: Boolean
Default: false
Enables Protractor's debug mode, which can be used to pause tests during execution and to view stack traces.
options.verbose
Type: Boolean
Default: true
options.protractorModulePath
Type: String
Default: undefined
If you want to use another protractor version instead the default one
options.webDriverUpdate
Type: Object
Default: undefined
options.webDriverUpdate.skip
Type: Boolean
Default: false
options.webDriverUpdate.browsers
Type: Array
Default: ['chrome']
List of browsers to update the webdriver
options.webDriverUpdate.args
Type: Array
Default: []
Additional arguments to pass for the update of the webdriver
options.webDriverStart
Type: Object
Default: undefined
options.webDriverStart.args
Type: Array
Default: []
Additional arguments to pass for the start of the webdriver
License
MIT © Julien Roche