packer-unit
v0.0.7
Published
packer-unit ========== The unit plugin runs all javascript unit tests. The scripts are located in the folder /test/unit. Common for unit testing is that the same structure is used as the app folder. For every source file a coresponding test file is spec
Downloads
18
Readme
packer-unit
The unit plugin runs all javascript unit tests. The scripts are located in the folder /test/unit. Common for unit testing is that the same structure is used as the app folder. For every source file a coresponding test file is specified. The test files will be indicated with the .spec.js suffix. e.g. /app/controllers/IndexController.js will have its unit test file /test/unit/controllers/IndexController.spec.js In order to make the test you want to run, and it's dependencies configurable a karma.config.js file should be placed in the /test/ folder.
Example file:
module.exports = {
karma: {
options: {
basePath: '',
frameworks: ['jasmine'],
files: [
'bower_components/angular/angular.js',
'bower_components/angular-route/angular-route.js',
'bower_components/angular-mocks/angular-mocks.js',
'src/app/*.js',
'src/app/**/*.js',
'test/unit/controllers/IndexController.spec.js',
'test/unit/*.spec.js'
],
browsers: [
'Chrome'
]
},
unit: {
options: {
singleRun: true
}
},
watch: {
options: {
singleRun: false,
autoWatch: true
}
}
}
};
Unit test are specified with Jasmine and will run with Karma. Jasmine is a behaviour driven testing tool where tests can be specified in a structured way. Karma runs the test cases against different browsers to eliminate cross browser dependensies.
After running the tests a Istanbul coverage report is generated and placed in the /coverage folder.
Unit tests can be runt by run the 'grunt unit' command. During development of the unit test it can be nice to have auto watch enabled. Auto watch can be started by running 'grunt unit:watch'.
Grunt Modules
- grunt-karma: 0.8.3,
- karma: ^0.12.0,
- karma-jasmine: 0.2.2,
- karma-coverage: 0.2.4,
- karma-chrome-launcher: ~0.1.4,
- packer-core: ~0.0.1
Grunt Task
- unit
- unit:run
More information
http://packerjs.io