Package Exports
- karma-phantomjs-launcher
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (karma-phantomjs-launcher) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
karma-phantomjs-launcher
Launcher for PhantomJS.
Installation
The easiest way is to keep karma-phantomjs-launcher as a devDependency in your package.json,
by running
$ npm install --save-dev karma-phantomjs-launcherConfiguration
// karma.conf.js
module.exports = function(config) {
config.set({
browsers: ['PhantomJS', 'PhantomJS_custom'],
// you can define custom flags
customLaunchers: {
'PhantomJS_custom': {
base: 'PhantomJS',
options: {
windowName: 'my-window',
settings: {
webSecurityEnabled: false
},
},
flags: ['--load-images=true'],
debug: true
}
},
phantomjsLauncher: {
// Have phantomjs exit if a ResourceError is encountered (useful if karma exits without killing phantom)
exitOnResourceError: true
}
})
}The options attribute allows you to initialize properties on
the phantomjs page object, so
options: {
windowName: 'my-window',
settings: {
webSecurityEnabled: false
},
}is equivalent to:
var webPage = require('webpage')
var page = webPage.create()
page.windowName = 'my-window'
page.settings.webSecurityEnabled = falseYou can pass list of browsers as a CLI argument too:
$ karma start --browsers PhantomJS_customIf you set the debug option to true, you will be instructed to launch a web browser to
bring up the debugger. Note that you will want to put debugger; statements in your JavaScript
to hit breakpoints. You should be able to put breakpoints in both your test code and your client
code. Note that the debug option automatically adds the --remote-debugger-port=9000 and
--remote-debugger-autorun=yes switches to PhantomJS.
For more information on Karma see the homepage.