Las pruebas de rendimiento sobre el código de JavaScript se estan convirtiendo en algo cada día más necesario. La capa de presentación adquiere más responsabilidades y los frameworks MVC de cliente ganan adeptos. Existen muchas herramientas que nos permiten realizar pruebas de rendimiento sobre JavaScript, una de las clásicas es JsPerf. Sin embargo comienzan a aparecer soluciones muy prácticas con un enfoque diferente. Una de ellas es Benchmark.js.
Utilizando Benchmark.js
El uso de esta librería permite realizar pruebas de rendimiento a través del concepto de suite. Para ello se crea una suite y se les añaden los diferentes casos de uso.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | var suite = new Benchmark.Suite; // creando los test suite.add( 'Expression regular test()' , function () { /o/.test( 'Hola Mundo!' ); }) .add( 'String indexOf()' , function () { 'Hola Mundo!' .indexOf( 'o' ) > -1; }) .add( 'Expression regular match()' , function () { 'HolaMundo!' .match(/o/); }) // add listeners .on( 'cycle' , function (evento) { console.log(String(evento.target)); }) //resultado .on( 'complete' , function () { console.log( 'El mas rapido es: ' + this .filter( 'fastest' ).pluck( 'name' )); }) .run({ 'async' : true }); |
En este caso concreto se trata de comparar diferentes métodos a la hora de buscar un carácter dentro de una cadena. La suite ha sido configurada para probar los métodos test(), indexOf() y match() y localizar cual es el que tiene un mejor rendimiento. Si ejecutamos el código la consola de JavaScript imprimirá:

El resultado despeja las dudas de forma instantánea y no ha sido necesario utilizar herramientas complejas para ello.
En GenBeta Dev: JavaScript MicroFrameworks