私たちはjrubyへの移行を検討しており、その一環として、テストアプローチとフレームワークを研究しています。私は地元の開発マシンでrspecをテストしてきましたが、2つの非常に簡単な方法で1つのクラスに対して2つのテストを実行するのにかかる合計時間は7〜8秒です。単純には、私は一つのセッターと真を返すものを意味します。非常に遅いWindowsでのjrubyのrspecテスト
rspecの出力は、テストが約2秒で実行されることを示しているため、合計時間の5-6秒がrspecのロードと初期化に費やされます。私は、私は私が読んだこの記事をJRubyの1.6.5とRSpecの2.7.1
を実行している
C:\rubycode\rspec_tutorial>rspec --profile user_spec.rb
..
Top 2 slowest examples:
User User should NOT be in any roles not assigned to it
0.023 seconds ./user_spec.rb:15
User User should be in any roles assigned to it
0.006 seconds ./user_spec.rb:10
Finished in 2 seconds
2 examples, 0 failures
を使用して、コマンドラインからFaster RSpec with JRuby を実行しているが、それは1.5歳以上だし、答えは、TDDを支援するためのローカルでの少数のテストの短いバーストとは対照的に、テストのスイートを実行することに関連しています。これは我々が開発したい方法です。 CIサーバーを組み込む予定です。
私の質問は、これは予想される実行時間ですか?ローカル開発マシンのJRUBYでrspecテストの実行をスピードアップする方法はありますか?
EDIT:
最大のパフォーマンスの向上は、32ビットの "クライアント" モードに64ビットの "サーバー" JVMから切り替えました。簡単なテストを実行するのにかかる時間が約40%短縮されました。私はNailgunを稼働させていますが、パフォーマンスはさまざまです。下に提供されているbanzaimanのリンクが最も役に立ちました
RSpecの起動、使用しているコードの起動、またはテストの実行に時間がかかりますか? –
@Andrew - 編集の質問 –
'ruby my_class.rb'を実行するのにどれくらい時間がかかりますか? –