我刚刚进入测试阶段,我有很多使用has_many关系的模型。在每种情况下,一个模型要求在保存时存在另一个模型。我遇到了我尝试的每个测试系统(FactoryGirl,Fixtures,现在的Fabrication),我无法弄清楚如何正确设置测试来复制这种行为。
我followed this GIST as an example但是将after_build
更改为before_save
,因为模型当时需要“尽管”模型。我是以错误的方式接近这个吗?如何测试这种关系/功能?
答案 0 :(得分:3)
我改变了这个
Fabricator(:brand) do
title "Coca Cola"
before_save do |brand|
styles Fabricate(:brand_style, :brand => brand, :style => Fabricate(:style))
end
end
到这个
Fabricator(:brand) do
title "Coca Cola"
styles(count: 3) { Fabricate(:style) }
end
现在测试正在通过。但是,我不确定这是否是正确的设置方式,所以如果有人有任何额外的见解,将不胜感激。