Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Generic template for benchmarking / performance testing JavaScript code using the [Benchmark node module](https://www.npmjs.com/package/benchmark)
<html>
<head>
<script src="https://wzrd.in/bundle/lodash@4.11"></script>
<script src="https://wzrd.in/bundle/platform@1.3"></script>
<script src="https://wzrd.in/bundle/benchmark@2.1"></script>
</head>
<body>
<script>
var Benchmark = require('benchmark');
var suite = new Benchmark.Suite;
// add tests
suite.add('FirstTest', function() {
// first test here
})
.add('SecondTest', function() {
// second test here
})
// add listeners
.on('cycle', function(event) {
console.log(String(event.target));
})
.on('complete', function() {
console.log('Fastest is ' + this.filter('fastest').map('name'));
})
// run tests async
.run({ 'async': true });
</script>
</body>
</html>
@thybzi

This comment has been minimized.

Copy link

commented Mar 26, 2016

Doesn't work without including lodash:
<script src="https://cdn.jsdelivr.net/lodash/4.6.1/lodash.min.js"></script>

@thybzi

This comment has been minimized.

Copy link

commented Mar 26, 2016

Also, pluck seems to be undefined for me.
Changed to:
console.log('Fastest is ' + this.filter('fastest')[0].name);

@mucaho

This comment has been minimized.

Copy link
Owner Author

commented Apr 29, 2016

@thybzi Thanks, Benchmark changed their API a bit with new version, I went ahead updated the example and also restricted the versions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.