kunagpal / karma-chrome-launcher

A Karma plugin. Launcher for Chrome and Chrome Canary.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

karma-chrome-launcher

js-standard-style npm version npm downloads

Build Status Dependency Status devDependency Status

Launcher for Google Chrome, Google Chrome Canary and Google Chromium.

Installation

The easiest way is to keep karma-chrome-launcher as a devDependency in your package.json, by running

$ npm install karma-chrome-launcher --save-dev

Configuration

// karma.conf.js
module.exports = function(config) {
  config.set({
    browsers: ['Chrome', 'Chrome_without_security'], // You may use 'ChromeCanary', 'Chromium' or any other supported browser

    // you can define custom flags
    customLaunchers: {
      Chrome_without_security: {
        base: 'Chrome',
        flags: ['--disable-web-security']
      }
    }
  })
}

The --user-data-dir is set to a temporary directory but can be overridden on a custom launcher as shown below. One reason to do this is to have a permanent Chrome user data directory inside the project directory to be able to install plugins there (e.g. JetBrains IDE Support plugin).

customLaunchers: {
  Chrome_with_debugging: {
    base: 'Chrome',
    chromeDataDir: path.resolve(__dirname, '.chrome')
  }
}

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

$ karma start --browsers Chrome,Chrome_without_security

Headless Chromium with Puppeteer

Chrome team made Puppeteer. It will automatically install Chromium for all platforms, so you can easily use it within your CI. Everything that you need, it's to install package and update your Karma config.

$ npm install puppeteer --save-dev
// karma.conf.js
process.env.CHROME_BIN = require('puppeteer').executablePath()

module.exports = function(config) {
  config.set({
    browsers: ['ChromeHeadless']
  })
}

Available browsers

  • Chrome
  • ChromeCanary
  • Chromium
  • ChromeHeadless (only on Chrome >= 59)
  • ChromeCanaryHeadless (only on Chrome >= 59)
  • Dartium

For more information on Karma see the homepage.

About

A Karma plugin. Launcher for Chrome and Chrome Canary.

License:MIT License


Languages

Language:JavaScript 100.0%