Package Exports
- unitest
- unitest/bin/cli.js
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 (unitest) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Seamless node and browser unit testing with code coverage
Features
- Unified node and browser tests with merged TAP output, code coverage reports, and exit status codes.
- Electron-powered browser testing for a fast, modern browser testing environment.
- Bundler-agnostic usage. Use browserify, webpack, or something else.
- Designed to be used with Babel-powered coverage instrumentation for fast, efficient testing with code coverage.
- Support for all coverage reporting options in Istanbul, including
html,text,cobertura, etc.
Usage
Usage: unitest {OPTIONS}
Options:
--version, -v Print version and exit
--help, -h Print usage information
--node, -n Path to node test entry file
--browser, -c Path to browser test entry file
--report, -r Istanbul coverage reportGetting Started
Run node and browser tests
- Transpile source code with Babel (optional)
- Bundle browser code (this step is possibly optional since
requireworks in electron) - Run
unitest, specifying test entry files
babel src -d build
browserify build/test/browser.js > build/test/browser-bundle.js
unitest --browser=build/test/browser-bundle.js --node=build/test/node.jsRun node and browser tests with coverage report
Running tests with coverage involves the exact same steps, but with an additional coverage instrumentation Babel plugin.
babel src -d build --plugins=istanbul
browserify build/test/browser.js > build/test/browser-bundle.js
unitest --browser=build/test/browser-bundle.js --node=build/test/node.js --report=htmlMerged test output
The separate TAP and coverage output along with exit code for your node and browser tests will be merged seamlessly.
Debugging
Debug node tests
No magic here, just use node-inspector or plain node.
npm install node-inspector -g
node-debug build/test/node.jsDebug browser (electron) tests
No magic here, just use devtool.
npm install devtool -g
devtool build/test/browser-bundle.js