Search code examples
ruby-on-railsrubyrspecprofilinggoogle-perftools

How to profile RSpec with perftools and bundler?


I need to profile the test suite that I usually run with bundle exec rspec spec/ and produce the GIF image.

What is the command to run the perftools.rb so that it works correctly with bundler?


Solution

  • I too had to dig around to get this. Here is what I did

    1. Put this in spec_helper.rb:

      config.before :suite do
        PerfTools::CpuProfiler.start("/tmp/rspec_profile")
      end
      
      config.after :suite do
        PerfTools::CpuProfiler.stop
      end
      
    2. Run your rspec

    3. Run pprof to get your numbers

      pprof.rb --text  /tmp/rspec_profile