ruby-on-rails – 工厂/夹具与简单的Model.create(…)?
发布时间:2020-12-16 19:13:48 所属栏目:百科 来源:网络整理
导读:当你可以在测试中使用ActiveRecord来创建数据库条目时,工厂/固定装置的目的是什么(我知道工厂就像固定装置一样,但更清晰一点)?即News.create(…) 我只是没有看到使用Factory Girl的任何优势,而不是简单地使用ActiveRecord方法创建一个新用户说新用户.. 谢谢
当你可以在测试中使用ActiveRecord来创建数据库条目时,工厂/固定装置的目的是什么(我知道工厂就像固定装置一样,但更清晰一点)?即News.create(…)
我只是没有看到使用Factory Girl的任何优势,而不是简单地使用ActiveRecord方法创建一个新用户说新用户.. 谢谢 解决方法
拥有工厂并遵循测试数据构建模式将使您在前面做一些工作,但真的会节省您的时间和未来的工作.
假设您有一个汽车模型,并且该汽车拥有一个所有者,并且该所有者需要一个地址.此外,每个人都有其他领域.如果要遵循直接使用模型的方法,则必须在需要它们的每个步骤定义中创建这些对象(以及对应关系).有工厂?您只需定义一次. 一旦您将工厂定义在一个具有相应结构的地方,您所要做的就是要求汽车和工厂将采用其他型号的所有依赖项.那不是很酷吗?最后,您希望专注于测试. 它真的很酷的是你可以覆盖特定的属性,所以你可能有这样的例子,如果你想覆盖属性速度: Given /^I have a car running^/ Factory :car,speed => 100 end 从我的谦逊的角度来看,我喜欢Factory Girl,因为它使我的测试代码易于保持并且非常容易阅读. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |