32

最も遅い rspec テストのリストを見つけるにはどうすればよいですか? それらをリファクタリングして、より高速に実行したいと考えています。宝石を探してみましたが見つかりません。何か入れようと思ってた

Rspec.before(:each)

Rspec.after(:each)

このリストを生成するためのブロック。しかし、仕様の名前にアクセスする方法がわかりません。

4

2 に答える 2

72

これは、実際には rspec コマンドに組み込まれています。すべての rspec テストを実行している間は、 -porフラグを使用してください。--profile

于 2012-06-07T18:11:44.163 に答える
14

MrDanが言うように、-profileフラグ。プロジェクトのルートに.rspecファイルを作成して、次のようにタイミング情報を常に取得することもできます。

$ cat .rspec 
--colour
--profile
--format nested
--backtrace

次のように、ガベージコレクションをオフにすることで、一般的にすべてのテストを高速化することもできます。

# turn off garbage collection when running tests, place this in spec_helper.rb
RSpec.configure do |config|
  config.before(:all) do
     DeferredGarbageCollection.start
  end

  config.after(:all) do
     DeferredGarbageCollection.reconsider
  end
end
于 2012-06-07T18:17:37.970 に答える