2012-01-20 28 views
0

我運行在軌道下面的寶石3.1應用ontop的紅寶石1.9.2:如何獲得我的後衛/ RSpec的測試運行得更快

group :test, :development do 
gem 'turn', '<0.8.3' 
gem 'rspec-rails' 
gem 'capybara' 
gem 'guard-rspec' 
gem 'minitest' 
gem 'ruby_gntp' 
gem "win32console", "~> 1.3.0" 
end 

我只有通過運行

初始化後衛和RSpec
rails g integration_test MyApp 

命令。

所以,我只有由該命令所產生的一個樣本測試。它看起來像這樣:

require 'spec_helper' 

describe "Tasks" do 
    describe "GET /tasks" do 
    it "works! (now write some real specs)" do 
     # Run the generator again with the --webrat flag if you want to use webrat methods/matchers 
     get tasks_index_path 
     response.status.should be(200) 
    end 
    end 
end 

出於某種原因,當我跑衛,它需要3.5秒和5秒之間的保護和RSpec只是這次失敗對小測試。在我看到的餡餅上,他們的機器在Mac上運行約0.159秒的精確測試。我能做些什麼來提高這些測試的性能?

我在Windows 7計算機上運行此。

有沒有人處理這種情況呢?

+1

你有沒有簽出名爲'spork'的寶石? – jstim

+0

立即嘗試。它是一種痛苦。我終於跑步了,但現在我的咆哮通知已停止運行。 –

回答

1

的一個詞來回答這個問題,因爲@jstim上述建議,是叉勺。

至少,你需要添加以下到您:test, :development塊:

gem 'spork', '~> 1.0rc' 
gem 'guard-spork' 

這裏是對Spork README的鏈接。

它所做的是建立一個預緊塊,你可以在你喜歡把你的應用程序的儘可能多或儘可能少。當然,好處是測試更快,因爲所有那些不需要每次都運行的東西。缺點是如果您對預加載的內容進行了更改,則將不會被測試。您需要在更改後重新啓動Spork。

相關問題