2013-10-09 38 views
3

我刚刚开始为我正在进行的rails应用程序的工作实施一些测试。我有一些依赖关系(主要是为用户管理设计),这将需要我有一个用户已经注册。在rails 4中播种测试数据库

我有这些项目设置在我的db/seeds.rb文件中。

我从this article,this questionthis question中发现了一些信息,但它们与较早版本的rails有关。

我创建了一个test_seeds.rake文件的其中一个问题的建议,但它似乎并没有被调用,当我运行

rake tests 

所以我的理论工作,这不只是测试文件夹结构作为导轨4的一部分进行了更改。

任何人都可以提供有关如何实现此目的的任何导轨4指导?

感谢 简

回答

3

啊哈,这要归功于Steve的注释this question我发现

Rails.application.load_seed 

,我在下面的方法已经实现了我的test/test_helper.rb文件,如下所示:

def set_up 
    Rails.application.load_seed 
    end 

它做什么,我需要。我不确定这是否是Rails 4的做法。

+0

我正在使用RSpec,并在spec/rails_helper.rb中放置所有require语句之后。 –

1

我会用seedbank

它允许你指定单独的种子文件。

  • 需要在每个环境中运行的种子文件。
  • 只需要在开发,测试或生产中运行的种子文件。
  • 需要在某些自定义情况下运行的种子文件。

我认为seedbank覆盖rake db:setup任务,而这又是由rake tests运行。但是你必须测试一下才能确定。