3

我想分享我的發現並聽取其他人關於成功和失敗的嘗試,以減少Rails應用程序集成測試的執行時間(無論是「普通」測試,基於Cucumber或RSpec的測試) 。Rails集成測試:減少執行時間

這個問題意味着測試涉及數據庫,視圖渲染和JavaScript/AJAX。 E.I.測試不要存根/模擬應用程序的緩慢部分。

回答

1

作者的回答。 我嘗試了兩件事:spork插件和內存數據庫。我的開發配置:Win7,Ruby 1.8.7,Rails 3,SQLite託管的Ubuntu VirtualBox。

Spork插件減少了我的測試從35秒到2秒的啓動時間。我總結了here步驟,但它們在github自述文件中描述的足夠好。 This post還介紹瞭如何將其與Guard一起使用,以確保在文件更改時重新啓動spork服務器。

我試着用in-memory database來減少執行時間。它們在某些情況下將執行時間縮短了10%,但在啓動時創建模式需要2秒的時間。結果非常多,我可以觀察到改善。所以我決定改善是不值得的。

另外我用used RVM替換Ruby 1.8.7用1.9.2。它將執行時間從58秒縮短到42秒。

結論:Spork和用1.9.2替換1.8.7可以顯着提高您的TDD體驗。