Skip to documentation

package

@stackline/karma-jasmine 1.0.2 — installation and API

A Karma plugin - adapter for Jasmine testing framework.

Install @stackline/karma-jasmine

npm install @stackline/[email protected]

Package version: 1.0.2. Metadata verified: 2026-11-12. This is separate from the framework version and demonstration runtime.

Node.js requirement
{"node": ">=12"}
Accepted peer dependencies (declared ranges)
{"karma": "^6.0.0"}

Tested environments are described in the versioned README and linked source checks. A declared peer range is not evidence that every version in it was tested.

Versioned reference

This reference comes from the published @stackline/[email protected] README. Its upstream attribution and license remain with the source. Benchmark and security statements describe the cited tests and advisories, not a guarantee for every application.

@stackline/karma-jasmine

A Karma plugin - adapter for Jasmine testing framework.

Documentation | npm | Issues | Repository

Current package version: 1.0.2


Why this package?

@stackline/karma-jasmine is the Stackline-maintained distribution of [email protected]. It is an independent continuation of karma-jasmine; original authors and licenses remain credited below.

Compatibility

Item Value
Package @stackline/[email protected]
API target [email protected]
Supported Node.js >=12
License MIT
Main entry lib/index.js
Runtime dependencies jasmine-core
Peer dependencies karma ^6.0.0

Installation

npm install @stackline/karma-jasmine

Preserve existing imports and plugin resolution with an npm alias:

npm install karma-jasmine@npm:@stackline/karma-jasmine

Usage and API reference

karma-jasmine

Adapter for the Jasmine testing framework.

Installation

npm install @stackline/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 whose name match a given pattern you can do this in the following way

$ karma start &
$ karma run -- --grep=<pattern>

where pattern is either a string (e.g --grep=#slow runs tests containing "#slow") or a Regex (e.g --grep=/^(?!.*#slow).*$/ runs tests not containing "#slow").

You can also pass it to karma.config.js:

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.

Custom spec filter

Providing a custom spec filter is also supported.

Example:

// Users are able to set a custom specFilter themselves

jasmine.getEnv().configure({
  specFilter: function (spec) {
    return spec.getFullName() === 'spec that succeeds'
  }
})

describe('spec', () => {
  it('that fails', () => {
    fail('This spec should not run!')
  })

  it('that succeeds', () => {
    expect(1).toBe(1)
  })
})

For more information on Karma see the homepage.

Credits and original authors

  • Original project: karma-jasmine.
  • Vojta Jina.
  • Maksim Ryzhikov.
  • johnjbarton.
  • Jonathan Ginsburg.
  • Mark Ethan Trostler.
  • Friedel Ziegelmayer.
  • XhmikosR.
  • olegskl.
  • semantic-release-bot.
  • dependabot[bot].
  • dignifiedquire.
  • Cornelius Schmale.
  • Arthur Thornton.
  • Patrick McGuckin.
  • Richard Park.
  • Fernando Costa.
  • Nico Jansen.
  • Aaron Hartwig.
  • Alesei N.
  • Barry Fitzgerald.
  • Dirk T.
  • Dmitriy Tychshenko.
  • Flavian Hautbois.
  • Georgii Dolzhykov.
  • Gregg Van Hove.
  • Jacob Trimble.
  • João Pereira.
  • Keen Yee Liau.
  • Limon Monte.
  • Luis Aleman.
  • Marek Vavrecan.
  • Matthew Hill.
  • Milan Lempera.
  • Niels Dequeker.
  • Robin Gloster.
  • Sahat Yalkabov.
  • Sampo Kivistö.
  • Schaaf, Martin.
  • Sergey Tatarintsev.
  • Sid Vishnoi.
  • Stefan Dragnev.
  • Tobias Speicher.
  • Todd Wolfson.
  • Vladimir Belov.
  • Yusuke Iinuma.
  • jiverson.
  • rpark.
  • strille.
  • Copyright (C) 2011-2013 Google, Inc.
  • Stackline maintenance: Alexandro Paixao Marques and Stackline contributors.

Original copyright, license notices and contributor acknowledgements remain part of this distribution. Stackline maintenance does not replace authorship of the original work.

License

MIT. See the license and notice files in the repository.

Use this repository's issue tracker for reproducible bugs and feature requests. Join r/Stackline for examples, usage questions and release discussions.