2013-03-18 51 views
1

我創建了一個全新的rails應用程序,添加一個虛擬控制器,帶有「斷言真正的」功能測試,並調用「使Rails.env」的初始化。測試期間,爲什麼rails會運行兩次初始化程序?

當我在這個程序中,初始化打印「發展」和「測試」運行測試耙。

誰能告訴我這是爲什麼?

Peter。

回答

1

運行耙啓動了軌道,然後再次運行測試(test_helper,spec_helper)負載軌的測試環境

如果你正在使用RSpec的,你可以調用它,而不耙

bundle exec rspec spec 

相當肯定與迷你測試你可以調用使用耙或紅寶石的可執行文件

不應該有任何不良的副作用,通過耙運行它們,只是你需要等待軌道啓動兩次

+0

問題是我有一些代碼需要在開發環境中運行,但不是在測試環境中運行。軌道總是運行開發環境的怪誕頭腦意味着沒有真正的方法來實現這一目標。運行測試時,是否有理由在開發模式下啓動rails? – spierepf 2013-03-19 11:34:17

+0

rake在開發模式下啓動 - 它應該對您的測試沒有影響 - 那些將在測試環境中運行在不同的進程中 – house9 2013-03-19 16:07:24

+1

除非所涉及的初始化程序填充數據庫,否則這是真實的。我希望人口爲發展而發生,但不是爲了測試。 – spierepf 2013-03-20 16:11:51

相關問題