用FactoryGirl创建一堆记录怎么样?

时间:2013-05-20 23:41:41

标签: ruby-on-rails-3 factory-bot

我正在为酒店预订申请。我遇到的问题是我正在尝试测试我的API,并且需要为每个测试创建的东西数量已经失控。例如,假设我想测试我的电话,以获得我需要的给定日期的可用性/费率:

  • 创建酒店
  • 创建属于酒店的几种房型
  • 为每种房型创建房间
  • 为每种房型设定费率
  • 创建一些预订

假设我做了3个房间类型,每个3个房间,以及10天的数据,我为每个测试创建了至少50-60个记录。这似乎很多。关于如何处理这个的任何想法?

1 个答案:

答案 0 :(得分:0)

您的对象是否必须在每次测试之前运行 - 或者在所有测试运行之前运行?如果每个测试都需要新对象,则需要在之前使用:每个都...结束。

如果您需要在每个规格页面创建一次,您可以在定义工厂后直接将它们放入let x = ...中。像这样:let(:user){FactoryGirl.create(:user)}

此外,如果您的验证需要唯一的名称等,请查看Faker。