Rails 3提供了一个seeds.rb来为生产环境加载最小的数据集。但是,我无法在我的测试环境中正确加载这组数据。
我最终应用了这个答案How to load db:seed data into test database automatically?
setup :load_seeds
def load_seeds
load "#{Rails.root}/db/seeds.rb"
end
问题是这会在每次测试时加载种子,这非常慢。另一个问题是,一旦测试运行,这些数据就会消失,因此rails控制台无法使用我的种子数据。
我打算稍后将种子数据迁移到灯具,但我现在没有时间这样做。
如何只加载一次这个数据,然后使用这个种子数据运行我的测试?
答案 0 :(得分:1)
这是一个非常干净的答案:How do I load seed.rb within a Rails test environment using rpec?
您使用rake RAILS_ENV=test db:seed
答案 1 :(得分:0)
答案 2 :(得分:0)
将其放入您的spec_helper或等效文件中:
Rails.application.load_seed