Run your Jasmine specs in the browser.
- webpack 2-4
- jasmine
yarn add sambac-webpack --dev
(or npm install)- Add a normal webpack configuration to your project. This conifguration should contain whatever loaders/rules/plugins are needed to run your tests. The entry point should be a string or an array of strings with globs that match all of your spec files, as relative paths from the root directory. See an example.
Make a package.json script with sambac --webpackConfig PATH_TO_CONFIG
A tab will open up in your browser with a list of specs to run. Clicking the links will open up tabs that run the specs and show the results every time that file or its dependencies change.
If you click the debug link, the loaded tab will not refresh automatically on file saving. The sourcemaps will refresh every time you refresh tbe browser though.
--port 1234
The port the server runs on which displays the list of specs to run (default: 5678)
--webpackPort 1235
The port the webpack dev server runs on (default: 5679)
--showPath
set to show path instead of only filename for specs
--disableRandom
do not run specs in random order (the default since jasmine 3)
If you need to run sambac with the node API:
const sambac = require('sambac-webpack');
sambac({
webpackConfig: PATH
port: port,
webpackPort: webpackPort,
showPath: false,
disableRandom: true
});
all of the options have the same defaults as the command line.
To customize sambac, add a sambac property to your webpack config
sambac: {
includePaths: ['/node_modules/babel-polyfill/dist/polyfill.min.js'],
pattern: /spec$/
}
These files will be included in the generated bundles for each spec.
If test-runners are inadvertently being created for included files, change this regex to filter them out.