我正在尝试将使用 Fixtures 的 Rails 3 应用程序移至 Factory Girl 并且不完全确定数据库的正确方法。(请注意,我使用 Rspec 进行测试)。
我有一个seeds.db
包含我的功能和集成测试所需的数据,但是当涉及到我的Role
模型的模型测试时,如果我想从工厂担任管理员角色,这些种子数据可能会妨碍我,但是我的种子数据库中已经有一个管理员角色,并且名称列必须是唯一的。此外,我在这些模型测试中创建的任何数据都可能会干扰我的集成测试,因为我会有额外的数据我没有预料到。
所以我猜有几个问题:
在我的单元测试中处理数据库的正确方法是什么?我需要其他测试的种子数据,但它们现在似乎正在“阻碍”。我是否被迫使用序列制作独特的数据,还是有办法加载种子数据仅用于功能和集成测试等?
是否有适当的方法来清除工厂数据,使其只是功能和集成测试的种子数据?
工厂女孩现在完全是新手,只想正确地学习它,而不是通过它来破解我的方式。感谢您的任何意见。