3
我在FactoryGirl中看到一些似乎與文檔相矛盾的奇怪行爲。在Rspec測試中,如果我這樣做;FactoryGirl「create_list」不保存到數據庫
static_groups = FactoryGirl.create_list(:static_group,5)
expect(StaticGroup.count).to eq(5)
測試失敗(預期:5,得到:0)。如果我添加明確的記錄保存;
static_groups = FactoryGirl.create_list(:static_group,5)
static_groups.each do |grp|
grp.save
end
expect(StaticGroup.count).to eq(5)
測試通過!我認爲工廠女生的「創造」應該爲你省下一筆存款,但在這種情況下,顯然沒有保存可以立即保存的記錄!即使是更奇怪的,如果我在第一個例子中詢問對象(我沒有做一個明確的保存),他們都有ID,所以他們肯定已經與數據庫交談了!
編輯
之前有人指出,狡猾的「數」的語法,我使用的DataMapper作爲ORM,這是計數:)
你可以顯示'static_group'工廠的定義。 – vee
數據庫插入是否在test.log中生成? –
謝謝你們提醒我再次檢查工廠 - 發現問題* facepalm * –