Run QUnit unit tests in a headless PhantomJS instance.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
.editorconfig
.eslintrc.json
.gitignore
.npmignore
.travis.yml
CONTRIBUTING.md
LICENSE
README.md
gulpfile.js
index.js
package.json
screenshot.png
yarn.lock

README.md

gulp-qunit Build Status Coverage Status

NPM

Run QUnit unit tests in a headless PhantomJS instance.

Run QUnit unit tests in a PhantomJS-powered headless test runner, providing basic console output for QUnit tests. Uses the phantomjs node module and the PhantomJS Runner QUnit Plugin.

Inspired by the grunt plugin grunt-contrib-qunit.

Install

Install with npm

$ npm install --save-dev gulp-qunit

Usage

var gulp = require('gulp'),
    qunit = require('gulp-qunit');

gulp.task('test', function() {
    return gulp.src('./qunit/test-runner.html')
        .pipe(qunit());
});

With options:

var gulp = require('gulp'),
    qunit = require('gulp-qunit');

gulp.task('test', function() {
    return gulp.src('./qunit/test-runner.html')
        .pipe(qunit({'phantomjs-options': ['--ssl-protocol=any']}));
});

With page options:

var gulp = require('gulp'),
    qunit = require('gulp-qunit');

gulp.task('test', function() {
    return gulp.src('./qunit/test-runner.html')
        .pipe(qunit({'page': {
            viewportSize: { width: 1280, height: 800 }
        }}));
});

You no longer need this plugin to run QUnit tests in your gulp tasks. Now you can do this with node-qunit-phantomjs, a stand alone module. It can also be used via command line, and it has an option for more verbose test reporting.

var gulp = require('gulp'),
    qunit = require('node-qunit-phantomjs');

gulp.task('test', function() {
    qunit('./qunit/test-runner.html');
});

With phantomjs2:

var gulp = require('gulp'),
    qunit = require('gulp-qunit');

gulp.task('test', function() {
    return gulp.src('./qunit/test-runner.html')
        .pipe(qunit({'binPath': require('phantomjs2').path}));
});

API

qunit(options)

options.timeout

Type: Number
Default: 5

Pass a number or string value to override the default timeout of 5 seconds.

options.phantomjs-options

Type: Array
Default: None

These options are passed on to PhantomJS. See the PhantomJS documentation for more information.

options.page

Type: Object
Default: None

These options are passed on to PhantomJS. See the PhantomJS documentation for more information.

options.binPath

Type: String Default: require("phantomjs").path

The option is used to execute phantomjs binary path

options.runner

Type: String Default: require.resolve('qunit-phantomjs-runner')

This option is used to configure the test runner used to control phantomjs

License

MIT © Jonathan Kemp