Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    karma-coveragepublic

    karma-coverage

    js-standard-style npm version npm downloads

    Build Status Dependency Status devDependency Status

    Generate code coverage using Istanbul.

    Installation

    The easiest way is to install karma-coverage as a devDependency, by running

    npm install karma karma-coverage --save-dev

    Configuration

    For configuration details see docs/configuration.

    Examples

    Basic

    // karma.conf.js
    module.exports = function(config) {
      config.set({
        files: [
          'src/**/*.js',
          'test/**/*.js'
        ],
     
        // coverage reporter generates the coverage
        reporters: ['progress', 'coverage'],
     
        preprocessors: {
          // source files, that you wanna generate coverage for
          // do not include tests or libraries
          // (these files will be instrumented by Istanbul)
          'src/**/*.js': ['coverage']
        },
     
        // optionally, configure the reporter
        coverageReporter: {
          type : 'html',
          dir : 'coverage/'
        }
      });
    };

    CoffeeScript

    For an example on how to use with CoffeeScript see examples/coffee. For an example of how to use with CoffeeScript and the RequireJS module loader, see examples/coffee-requirejs (and also see the useJSExtensionForCoffeeScript option in docs/configuration.md).

    Advanced, multiple reporters

    // karma.conf.js
    module.exports = function(config) {
      config.set({
        files: [
          'src/**/*.js',
          'test/**/*.js'
        ],
        reporters: ['progress', 'coverage'],
        preprocessors: {
          'src/**/*.js': ['coverage']
        },
        coverageReporter: {
          // specify a common output directory
          dir: 'build/reports/coverage',
          reporters: [
            // reporters not supporting the `file` property
            { type: 'html', subdir: 'report-html' },
            { type: 'lcov', subdir: 'report-lcov' },
            // reporters supporting the `file` property, use `subdir` to directly
            // output them in the `dir` directory
            { type: 'cobertura', subdir: '.', file: 'cobertura.txt' },
            { type: 'lcovonly', subdir: '.', file: 'report-lcovonly.txt' },
            { type: 'teamcity', subdir: '.', file: 'teamcity.txt' },
            { type: 'text', subdir: '.', file: 'text.txt' },
            { type: 'text-summary', subdir: '.', file: 'text-summary.txt' },
          ]
        }
      });
    };

    FAQ

    Don't minify instrumenter output

    When using the istanbul instrumenter (default), you can disable code compaction by adding the following to your configuration.

    // karma.conf.js
    module.exports = function(config) {
      config.set({
        coverageReporter: {
          instrumenterOptions: {
            istanbul: { noCompact: true }
          }
        }
      });
    };

    For more information on Karma see the homepage.

    install

    npm i karma-coverage

    Downloadsweekly downloads

    201,723

    version

    1.1.2

    license

    MIT

    repository

    githubgithub

    last publish

    collaborators

    • avatar
    • avatar
    • avatar