2011-12-22 90 views
1

我正在加快我們的應用程序測試。我們已經進行了大約600次測試,測試結果越來越高,開始需要很長時間才能運行。通過刪除tmp文件(或這種排序?)來加速rspec

我知道有一些工具可以加速測試。一些我們已經在使用,一些我們將開始使用,並且我相當確定一些我們不能使用,因爲我們的rails版本(2.3.8)。

但我來這裏的原因不同。幾個星期前,我開始使用一臺計算機,它沒有運行我們的測試一段時間,測試運行速度非常快。如果不是通常的20-30分鐘,它將在5-7分鐘內完成,如果不是更短的話。

起初我以爲有些事情是錯的,但我跑的次數越來越多 - 它開始變得越來越慢,直到我花了20-30分鐘才跑完。

現在的測試是相同的測試,工具都是一樣的。除了事實上,我還沒有進行一段時間的測試(幾個星期〜),然後再次運行,我無法想象任何顯着變化的事情。它可能是與tmp文件相關的東西,或者可以被刪除或調整以使我們的測試更快運行的任何類型的文件嗎?

感謝您的幫助。

回答

1

一些提示,以加快測試:

  • 確保您正在使用事務燈具

  • 嘗試僅僅初始化,而不是保持對象的數據庫

  • config.whiny_nils = falseconfig/environments/test.rb

  • 如果你正在使用Devise,把config.stretches = Rails.env.test? ? 1 : 10config/initializers/devise.rb

  • 升級到1.9.3

PS:剛纔看到你在使用Rails 2.3.8,所以這不會爲你工作,但我會離開這裏萬一有人想用:

  • this patch到應用程序中(請務必升級到3.2時將其刪除)
+0

感謝您的幫助但你能幫我解答我的具體問題嗎? – bigimot 2011-12-22 16:27:15

+0

他做到了。您沒有提供足夠的信息來獲取更具體的信息。 – 2011-12-23 20:17:10

+0

@Marnen是對的。 – 2011-12-23 21:57:43