Home

Awesome

grunt-jasmine-runner

Grunt task for running jasmine specs via phantomjs.

Build Status

Getting Started

Install this grunt plugin next to your project's [grunt.js gruntfile][getting_started] with: npm install grunt-jasmine-runner

Then add this line to your project's grunt.js gruntfile:

grunt.loadNpmTasks('grunt-jasmine-runner');

Config

( all jasmine task configuration applies to jasmine-server )

'jasmine' : {
  src : 'src/**/*.js',
  specs : 'specs/**/*Spec.js',
  helpers : 'specs/helpers/*.js',
  timeout : 10000,
  template : 'src/custom.tmpl',
  junit : {
    output : 'junit/'
  },
  phantomjs : {
    'ignore-ssl-errors' : true
  }
},
'jasmine-server' : {
  browser : false
}

AMD Specs

If the amd flag is set in the config specs will be loaded via an AMD require call. This does not make an assumption about the AMD library being used, you must specify the path to that in the helpers option e.g.

helpers: [
  '/path/to/require.js',
  '/path/to/requireConfig.js'
],

Spec files should define the module(s) they are testing directly as the src config option will be ignored in this case e.g.

define(['/src/myModule.js'], function(MyModule){
  describe('MyModule', function(){
    // etc...
  });
});

PhantomJS

The base jasmine task requires phantomjs to be installed and in the executable path. Download phantomjs here

Running

After successful configuration, you can run your tests through phantomjs with :

grunt jasmine

Or open in a web browser with

grunt jasmine-server

Example configuration

Here is an example grunt jasmine configuration based off the Pivotal Labs example app.

Release History

License

Copyright (c) 2012 Jarrod Overson Licensed under the MIT license.

Portions adapted from grunt core tasks and are copyright Ben Alman and licensed under the MIT license

Forked from https://github.com/creynders/grunt-jasmine-task by Camille Reynders. No portions of the original code remain.