2014-09-12 93 views
3

我在測試環境中運行我的rspec測試。但我有一個測試必須使用開發數據庫。 (我用RestClient運行curl命令,在數據庫中創建一個對象(表照片))我需要檢查常規數據庫中的對象。如何在不同環境下運行rspec測試?

在我spec_helper,我有ENV [ 「RAILS_ENV」] || = '測試'

我想在這一次測試將ENV [ 「RAILS_ENV」] = '發展',但它仍然說未初始化的常量照片。

有什麼想法?

+0

這可能是一個壞主意,你不能在不同的環境之間共享/使用相同的代碼。我建議你在測試環境中使用當前的代碼,因爲它運行規範,就好像你會在生產環境或登臺環境中運行你的代碼一樣。 – Surya 2014-09-12 11:37:42

回答

0

雖然這不是一個答案。

這完全是錯誤的。您不應該訪問任何測試的開發環境。在測試環境中設置所需的數據以使測試正常工作。

+0

我知道,但我正在構建一個API。我將不得不再次爲測試數據庫設置所有配置,僅用於這一個測試。 – 2014-09-15 06:31:56

1

嘗試在測試命令之前在控制檯中預先RAILS_ENV =開發。

未初始化的常量意味着別的東西沒有設置。也許模型或控制器試圖訪問'照片'?

相關問題