2009-11-23 45 views
1

我必須將功能添加到依賴於來自另一個應用程序的數據庫的應用程序。我已經能夠建立到這個外部數據庫的連接並從中獲取數據。但是,我不知道如何讓我的主應用程序爲這個外部應用程序創建一個測試數據庫。針對依賴於來自其他應用程序的外部數據庫的應用程序的RSpec設置

如果有一種方法可以爲這個數據庫提供模式,並以'rake db:test:prepare'的方式創建它,那將是非常棒的。有沒有RSpec的配置能力來做到這一點,還是我必須推出我自己的任務?

回答

0

我不知道有任何簡單的方法來做到這一點。 你可以有準備的SQL模式,並在您的測試數據庫加載槽定製rake任務

但如果是用於測試,這可能是一個好主意,你尋找到工廠 例如Factory girl

「factory_girl是一個直觀的定義語法,支持多種構建策略(保存的實例,未保存的實例,屬性散列和存根對象)的Fixtures替換,並支持同一類的多個工廠(用戶,admin_user等) ),包括工廠繼承。「

而一個screencast

0

這是一個Rails應用程序嗎?如果是這樣,即使使用RSpec,db:test:prepare任務和相關任務仍然可以工作。

+0

忘記提到這一點。是的,它是一個rails應用程序。我不確定db:test:prepare會在這種情況下工作。這個任務如何知道要創建什麼數據庫。我可以將它指向另一個應用程序的數據庫模式,以便它也包含該數據庫嗎? – manlycode 2009-11-23 14:31:28

0
I ended up just running "rake db:test:prepare" for the external application and update the database configs of the application I'm developing to include the test DB for the external application. I'd like to automate the 'rake db:test:prepare' for the external app, however I don't see myself updating its schema that often. 
相關問題