工厂女孩会打电话给模特吗?

时间:2015-04-06 16:44:37

标签: ruby-on-rails factory-bot

如果我只需要一个基本模型,那么直接创建模型与创建工厂女孩模型有什么不同?

即。

User.new(..all the correct params)

VS

Factory.create :user

我的最终问题是:

当测试控制器直接创建模型时,测试不太可靠吗?

2 个答案:

答案 0 :(得分:1)

没有太大的区别。您可以直接创建新对象。然而,工厂女孩可以处理关联,你通常会把一些默认数据放在那里,所以对你来说更容易。

重新使用代码也更容易。 否则,无论何时创建用户,都必须设置这些参数。

这就是为什么使用工厂女孩是一种好习惯

答案 1 :(得分:0)

通过Factory Girl创建一个新对象,使代码干涸,使测试更加可靠。例如,如果您稍后决定向users表添加新属性,则只有1个位置可以更新该属性。如果您要使用User.new(....),则必须去搜索测试文件中的所有内容以更新更改。