sfcode An Online Competing and Development Environment

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.