2010-02-20 5 views
6

Existe-t-il quelque chose de similaire à Ruby Benchmark dans Rails? J'ai utilisé le benchmark de Ruby dans le passé pour comparer différents morceaux de code, mais aucun d'entre eux n'était lié à Rails. Je voudrais utiliser mes modèles d'application dans certains étalonnage pour faire quelque chose le long des lignes de ...Benchmarking Rails Méthodes du modèle

#!/usr/bin/ruby 
require 'benchmark' 

Benchmark.bmbm do |x| 
    x.report("Benchmark 1") do 
    1_000_000.times do 
     # do something here... 
    end 
    end 

    x.report("Benchmark 2") do 
    1_000_000.times do 
     # Do something else here... 
    end 
    end 
end 

Ce qui me donne une sortie comme ceci:

Rehearsal ----------------------------------------------- 
Benchmark 1 0.070000 0.000000 0.070000 ( 0.069236) 
Benchmark 2 0.070000 0.000000 0.070000 ( 0.069227) 
-------------------------------------- total: 0.140000sec 

        user  system  total  real 
Benchmark 1 0.070000 0.000000 0.070000 ( 0.069793) 
Benchmark 2 0.070000 0.000000 0.070000 ( 0.069203) 

j'ai regardé dans le script/performance/benchmarker et script/performance/profiler, mais je ne pouvais pas trouver un moyen de comparer les méthodes. J'ai également envisagé de le faire dans le cadre d'un test, mais je n'ai aucune sorte d'assertions, ce qui n'a pas semblé logique.

Répondre