用于测试的Rails fixture:选择性地加载单个记录



我是否必须将模型的所有固定记录放在同一文件中,以模型命名?我想有选择地加载一些记录取决于测试用例,因为其他数据的存在改变了我的应用程序的行为

您必须将所有fixture记录放在同一个文件中—fixture在运行测试之前放置,并且设计为在每次测试运行时都在数据库中。如果希望添加特定于测试的fixture,最好使用工厂,工厂提供了本地化的、特定于上下文的方法来创建和模拟对象,以供测试使用。您可以选择只实例化它们,或者将它们保存到数据库中——这为您提供了灵活性。

最流行的Rails工厂是factory girl -你应该试一试!

最新更新