我使用rspec来测试我的rails 3应用程序。在测试开始之前,我需要在数据库中植入种子。如何使用以下内容作为数据库的种子:
/db/seeds.rb
["Admin", "Member"].each do |role_name|
Role.find_or_create_by_name(role_name)
end
谢谢
发布于 2011-05-15 03:10:02
尝试一下,就像这样
rake db:seed RAILS_ENV=test
您可以获得执行的所有rake命令的列表
rake -T
如果这是测试数据,您可能希望将其放入将在测试开始时加载的fixture中。
发布于 2013-11-12 21:38:39
在spec_helper.rb或rails_helper.rb中:
RSpec.configure do |config|
config.before(:suite) do
Rails.application.load_seed # loading seeds
end
end
发布于 2012-01-25 05:13:35
尽管Scott的解决方案肯定对您有效,但我认为解决您的问题的更好方法是将负责为测试数据库播种的代码放在RSpec的配置块中:
我使用SeedFu,在我的spec_helper中,我有:
RSpec.configure do |config|
# some other configuration code ...
config.before(:suite) do
# ...
SeedFu.seed
# ...
end
# some other configuration code ...
end
https://stackoverflow.com/questions/6004057
复制相似问题