Подтвердить что ты не робот

FactoryBot: создать один и тот же объект несколько раз

В одном из моих тестов rspec я создаю несколько объектов из одного и того же определения фабрики

Например

FactoryBot.create(:model_1)
FactoryBot.create(:model_1)
FactoryBot.create(:model_1)

Есть ли метод, который factory_bot предоставляет для этого в одну строку

Я знаю, что я могу сделать

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

Но я ищу что-то, что factory_bot предоставляет для создания нескольких объектов одной модели.

Примечание: FactoryBot изначально назывался FactoryGirl

4b9b3361

Ответ 2

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

Простой и лучший способ передвижения.

Вы можете игнорировать имена атрибутов, если они не нужны, и использовать вместо них последовательность.

Ответ 3

Не уверен, что это было обновлено с момента опубликования ответа, но теперь вы бы сделали следующее

FactoryBot.create_list(:model_1, 3)

см Начало работы

Ответ 4

Если вам нужно сделать это для модели с проверкой, я смог сделать следующее в своем тесте.

10.times do |i|
  create(
    :object,
    property: i
  )
end