Benchmark Suite Runner for benchmark.js
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
examples
.npmignore
README.md
benchrunner.js
bower.json
package.json

README.md

Benchmark Suite Runner for benchmark.js

Installation

npm

npm install benchrunner

Bower

bower install benchrunner

Usage

You can write a suite like this:

(function(root) {

    var suites = root.benchrunner.suites;;

    suites.push(Benchmark.Suite('trim')
        .add('String.replace', function() {
            '   foo   '.replace(/^\s+|\s+$/g, '');
        })
        .add('String.trim', function() {
            '   foo   '.trim();
        })
    );

}(typeof global == 'object' && global || this));

Now you can run them from CLI or in the browser really easy:

CLI

Currently only PhantomJS is supported.

phantomjs benchrunner.js suite1.js suite2.js

From the root of your project, that would become e.g.:

phantomjs ./node_modules/benchrunner/benchrunner.js benchmarks/my-suite.js

Or, if you install globally (i.e. npm install -g benchrunner):

benchrunner benchmarks/my-suite.js

Browser

Just point your browser at the runner page, e.g.

http://localhost/your-project/benchmarks/index.html

See examples/basic.html for an example (you need to include a few scripts).

Examples

Credits

Heavily inspired by Lo-Dash's benchmark suite runner.

License

MIT licensed