0

我们的测试代码当前正在使用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 返回一个空数组?

4

1 回答 1

1

定义它的FactoryGirl工厂,在spec/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 创建一个制造,你应该没问题。

于 2016-03-16T23:59:01.360 回答