Bamboo Reporter for Mocha on Node.js
Designed to integrate with Atlassian Bamboo's Node.js plugin
mocha -R mocha-bamboo-reporter
Download and install the Node.js Bamboo Plugin from the Atlassian Marketplace from inside your Bamboo installation. (Note that this is not yet supported for onDemand installations)
Then, in your package.json file, add a devDependency for "mocha-bamboo-reporter", and a script "bamboo" as outlined below...
package.json
...
"devDependencies": {
...
"mocha": ">=1.8.1",
"mocha-bamboo-reporter": "*"
}
"scripts": {
...
"bamboo": "node node_modules/mocha/bin/mocha -R mocha-bamboo-reporter"
}
- In Bamboo, create an "npm task" with command
run-script bamboo
- Then, in Bamboo add a "Parse mocha results" task which runs afterwards to parse the results from mocha
- If you don't do a full checkout on each build, make sure you add a task to delete mocha.json BEFORE the
npm run-script bamboo
task (a simple script task that runsrm -f mocha.json
should do the trick)
To run your Mocha tests without modifying your package.json you can simply do the following in Bamboo:
- Add a "npm" task with command
install mocha-bamboo-reporter
- Add a "Node.js" task with script
node_modules/mocha/bin/mocha
and arguments--reporter mocha-bamboo-reporter
, along with any other arguments you want to pass to Mocha - You'll still need to run a "Parse mocha results" task, and ensure you don't use an old mocha.json
In some cases, you may only want to see which tests passed, failed or were skipped.
To configure this, add mocha-bamboo.opts to the root of your project. For example,
mocha-bamboo.opts
{
"report" : {
"passes" : false,
"skipped" : false,
"failures" : true
}
}
This example configuration only adds tests that failed to your mocha.json. Note that your mocha.json will still include passed and skipped arrays, only they will be empty.
The default configuration sets all three options to true