【发布时间】:2014-06-11 12:27:38
【问题描述】:
我(迟来的)开始使用 RSpec/capybara 测试我的 Rails 应用程序(一个购物网站),使用 database cleaner 清除数据库并使用 Factory Girl 为每次测试生成新对象(就像大多数人一样)。这很好用,我认为在测试之间清除数据是个好主意。
但是,生成同一对象的多个实例可能会变得很慢并且(据我所知)有点乏味。在我的数据库中有一些对象总是相同的,或者我总是会生成一个相同的副本进行测试。例如,我的 Package 模型,它定义了订阅包的定价和功能限制。它可能永远不会改变。
有没有办法,通过这种配置(如果您需要更多信息,请评论并指定),将某些对象实例放入测试数据库并排除它们从数据库清理器或任何其他如何在测试数据库中永久保存特定对象的副本?
这主要是为了提高测试速度。
【问题讨论】:
标签: ruby-on-rails rspec capybara factory-bot database-cleaner