karma-jasmine
Adapter for the Jasmine testing framework.
Installation
npm install karma-jasmine --save-dev
Configuration
// karma.conf.js
module.exports = function(config) {
config.set({
frameworks: ['jasmine'],
files: [
'*.js'
]
})
}
If you want to run only some tests matching a given pattern you can do this in the following way
$ karma start &
$ karma run -- --grep=<pattern>
or
module.exports = function(config) {
config.set({
...
client: {
args: ['--grep', '<pattern>'],
...
}
})
}
If you want to pass configuration options directly to jasmine you can do this in the following way
module.exports = function(config) {
config.set({
client: {
jasmine: {
random: true,
seed: '4321',
oneFailurePerSpec: true,
failFast: true,
timeoutInterval: 1000
}
}
})
}
Debug by URL
Failing tests print a debug URL with ?spec=
. Use it with --no_single_run
and paste it into your browser to focus on a single failing test.
Sharding
By setting config.client.shardIndex
and config.client.totalShards
, you can run a subset of the full set of specs. Complete sharding support needs to be done in the process that calls karma, and would need to support test result integration across shards.
For more information on Karma see the homepage.