2011-01-22 60 views
5

我正在使用Cucumber,Rspec和Factory Girl來測試我的Rails應用程序。但我有幾個查找表,主要包含靜態數據。所以我試圖找出測試時填充這些的最佳方法。在FactoryGirl中單獨做他們看起來很乏味,我想遠離燈具。對於開發和生產,我將它們填充到我的seeds.rb文件中。如何在測試(Rails)中填充查找表

謝謝!

回答

7

使用工廠女孩.sequence,PopulatorFaker,你永遠不會用完實驗鼠!

Factory.define(:model) do |m| 
    m.sequence(:title) { |n| "model-#{n}" } 
    m.author   Faker::Name.name 
    m.short    Populator.words(5) 
    m.long    Populator.paragraphs(1..3) 
end 

然後在before :each塊也許

@models = [] 
15.times { @models << Factory.create(:model) } 

或者你也可以只使用填充器測試之前,填寫您的數據庫。

+1

FactoryGirl的語法更改了一些新的更新:https://github.com/thoughtbot/factory_girl/blob/master/GETTING_STARTED.md – Mirko 2011-08-31 10:49:27

0

也許像

rake RAILS_ENV=test db:seed 
在您的測試幫助文件