A small node.js application for benchmarking projects in a continuous manner. Works with any project! all you need is a Makefile :)
$ npm install -d
Start the app:
$ node app Express server listening on port 3000 in development mode
Start Kue to process the jobs:
$ node jobs Kue listening on port 8888
Benchmark against a specific commit:
$ curl -d 'commit=HEAD' http://local/visionmedia/express/benchmark Accepted
View the reports by visiting
http://localhost:3000/visionmedia/express, where you may manually enter commits as well.
Setting up a project to use CB is simple, all you need is a
make benchmark target, outputting colon-delimited results. The labels on the left-hand side are used for display in reporting, and the values on the right represent ops/s or whatever you wish.
Below is an example from the Jade template engine using this script:
$ make benchmark tiny: 197874 small: 29173 small locals: 20983
Below is an example from Express using this HTTP benchmark script:
$ make benchmark Hello World: 6180.57 JSON: 6120.90 Middleware: 6703.47
Keep in mind that the label/values are completely arbitrary, you may have any number of these.