Execute testem with Continuous Integration Mode then generate TAP file as test results.
This plugin requires Grunt ~0.4.0
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install -g testem grunt-cli
npm install grunt-testem --save-dev
One the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-testem');
In your project's Gruntfile, add a section named testem
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
'testem': {
options : {
launch_in_ci : [
'firefox',
'safari'
]
},
main : {
src: [ 'examples/*.html' ],
dest: 'tests.tap'
}
}
});
src property be able to set test_page
html path as testem option or testem.json
path
TAP file path
See also Configuration File
It also accepts:
output.coverage
that is the folder path where coverage reports are written.
grunt.initConfig({
'testem': {
options : {
output: {
coverage : 'coverage-results/'
}
},
main : {
src: [ 'examples/*.html' ],
dest: 'tests.tap'
}
}
});
Source files must be instrumented before running tests. An example on how to do it in grunt is available inside examples/coverage
.
options.bailOut
iftrue
, when a test fails, all remaining tests won't run (defaultfalse
)
grunt.initConfig({
'testem': {
options : {
bailOut: true
},
main : {
src: [ 'examples/*.html' ],
dest: 'tests.tap'
}
}
});
This option speeds up the test execution in case of errors.