2013-08-26 38 views
40
benim RSpec testin birinde

aynı nesne oluşturmak, ben aynı fabrika tanımıFactoryGirl: birden çok kez

Ör

FactoryGirl.create(:model_1) 
FactoryGirl.create(:model_1) 
FactoryGirl.create(:model_1) 

birden fazla nesne oluşturma mi var factory_girl bunu sağlayan bir yöntem tek satırda

ben yapabilirim, biliyorum

3.times {FactoryGirl.create(:model_1)} 

Ama ben aynı modelin birden çok nesnesini oluşturmak için factory_girl sağlar bir şey arıyorum.

cevap

78

Sen (dolayısıyla aynı anda x nesneleri oluşturun) gibi bir liste oluşturabilirsiniz:

FactoryGirl.create_list(:model_1, 3) 

Belgeleri lives here. Cevap yayınlanmıştır beri bu güncellendi, ama şimdi yapardın

+0

FactoryGirl.create (: model_1,: type => "bir şey") 'gibi birden çok nesne oluşturmak istersem ne olur? – usha

+2

doktora bakın, paragraf hashını üçüncü argüman olarak iletebilirsiniz – apneadiving

+0

Teşekkürler. Daha yakından bakmalıydım. – usha

2
FactoryGirl.create_list :factory_name, 2, attribute_name: 'value' 

Basit ve taşımak için en iyi yolu görüyoruz.

Gerekmiyorsa, öznitelik adlarını yoksayabilir ve bunun yerine diziyi kullanabilirsiniz.

İlgili konular