Factory_girl返回对象和制作者返回一个空数组为什么?

时间:2016-03-16 21:15:54

标签: ruby-on-rails factory-bot fixtures fabrication-gem

我们的测试代码目前正在使用factory_girl,我正在尝试使用fabrication进行测试以生成对象。

In Factory_Girl

batch = FactoryGirl.create(:transaction_batch)
puts batch  # print out a transaction object

In Factory Girls

batch = Fabricator(:transaction_batch)
puts batch # prints out an empty array

有人能告诉我为什么Fabricator会返回一个空数组吗?

1 个答案:

答案 0 :(得分:1)

FactoryGirlspec/factories/transaction.rb中定义了它的工厂,你有这样的东西:

FactoryGirl.define do
  factory :transaction_batch do
    first_name "John"
    last_name  "Doe"
  end
end

Fabricator使用"制作"来自其他地方,例如spec/fabricators/transaction_fabricator.rb

你还没有定义制作。这就是原因,或者你有一个空白的制作,如:

Fabricator(:transaction_batch) do
end

为Fabricator创建一个制作,你应该没问题。