2011-12-07 50 views
4

我們正在考慮轉向jruby,作爲其中的一部分,我們一直在研究測試方法和框架。我一直在我的本地開發機器上測試rspec,並發現用2個非常簡單的方法爲單個類運行2個測試所需的總時間爲7-8秒。簡單來說,我的意思是一個setter和一個返回true的東西。rspec在jruby下運行非常慢的Windows

rspec輸出顯示測試在大約2秒內運行,因此總時間的5-6秒用於加載和初始化rspec。我使用

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 

我運行JRuby 1.6.5和RSpec 2.7.1

我讀過這篇文章的命令行中運行,Faster RSpec with JRuby 但它是超過15歲,答案與運行套件測試相關,而不是本地少量測試的短陣發作,以幫助TDD,這是我們如何開發的。在這條線上,我們將整合CI服務器。

我的問題是,這是預期的執行時間?有沒有什麼方法可以加速在本地開發機器uner JRUBY上運行rspec測試?

編輯:

最大性能增益從64比特「服務器」 JVM被切換到32位的「客戶端」模式。我看到運行簡單測試所花的時間減少了大約40%。我也使Nailgun運轉起來,但表現各不相同。 banzaiman下面提供的鏈接是最有幫助的

+0

是否需要花費時間啓動RSpec,啓動您正在使用的代碼或運行測試? –

+0

@Andrew - 編輯問題 –

+0

需要多久才能做'ruby my_class.rb'? –

回答