2011-10-29 19 views
2

我只是在運行黃瓜;我不確定它運行的是哪個數據庫,但是當我使用selenium(通過水豚)運行它時,它肯定會使用開發數據庫。我如何確定測試數據庫被選中,以及如何與測試數據庫進行交互以確保它處於正確的狀態?使用黃瓜時,如何選擇'測試'數據庫?

+0

入住config文件夾中的database.yml,你應該會看到數據庫進行測試。你怎麼知道slenium使用開發數據庫? – megas

+0

當我看到它在瀏覽器中執行帳戶創建過程時,它無法完成,因爲該帳戶已經在dev中創建,但它不應該在測試中。 – cjm2671

回答

1

默認情況下,Cucumber使用測試環境和測試數據庫。你應該在你的database.yml中看到這個:

cucumber: 
    <<: *test 

這意味着'從測試數據庫中取得設置並用於黃瓜'。

爲了讓您的測試數據庫在正確的狀態,用耙子命令複製開發數據庫準備執行:

rake db:test:clone_structure 

我還建議看DatabaseCleaner寶石,這是在使用廣泛採用試驗。您可以使用黃瓜進行設置,以便截斷或使用數據庫事務來確保每個方案都從乾淨的數據庫狀態開始。

https://github.com/bmabey/database_cleaner