karma-jasmine-html-reporter

A Karma plugin. Dynamically displays tests results at debug.html page

Usage no npm install needed!

<script type="module">
  import karmaJasmineHtmlReporter from 'https://cdn.skypack.dev/karma-jasmine-html-reporter';
</script>

README

karma-jasmine-html-reporter

npm version npm downloads

Reporter that dynamically shows tests results at debug.html page.

Jasmine 1.3 is not supported. For Jasmine < 3.0.0, use version 0.2.2

alt tag

You can also run a describe block, or a single test.

alt tag

Installation

You can simply install karma-jasmine-html-reporter as a devDependency by:

npm install karma-jasmine-html-reporter --save-dev

Configuration

// karma.conf.js
module.exports = function(config) {
  config.set({
    reporters: ['kjhtml']
  });
};

With options

In combination with multiple reporters you may want to disable terminal messages because it's already handled by another reporter.

Example using the 'karma-mocha-reporter' plugin:

// karma.conf.js
module.exports = function(config) {
  config.set({

    // Combine multiple reporters
    reporters: ['kjhtml', 'mocha'],

    jasmineHtmlReporter: {
      suppressAll: true, // Suppress all messages (overrides other suppress settings)
      suppressFailed: true // Suppress failed messages
    }

  });
};

You can pass a list of reporters as a CLI argument too:

karma start --reporters kjhtml

Develop

There's not much to this package.

adapter.js, html.jasmine.reporter.js, and jasmine.css are copied with small adjustments from jasmine/lib/jasmine-core/boot.js and jasmine/lib/jasmine-core/jasmine-html.js, and jasmine/lib/jasmine-core/jasmine.css respectively.

Just pull over changes from Jasmine as needed. There is a script to help with that; just run npm run build and review the changes. Specifically, adapter.js needs a lot of manual removals.