Rails:防止在rake任务期间初始化spec文件

时间:2013-06-14 19:51:19

标签: ruby-on-rails-3 rspec rake rspec-rails rake-task

我有一个Rails应用程序,其中包含一个充满rspec测试的spec文件夹。其中许多人在我的应用中引用资源,例如“用户”资源。在我的机器上一切都很好,但是当我尝试在新机器上设置应用程序并使用rake db:setup构建数据库时,它会启动整个Rails应用程序,并且由于某种原因,部分rspec测试会得到评估。由于其中一个引用了尚未创建数据库表的“用户”资源,因此rake任务失败并显示relation "users" does not exist

我可以很容易地解决这个问题,我将spec文件夹移出父目录,运行安装程序,然后将其移回,但这很烦人。显然,我希望在这样的rake任务中忽略spec文件。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这个SO答案帮助了我:FactoryGirl screws up rake db:migrate process

这是对我有用的特定解决方案。

在您的gemfile中,更改factory_girls_rails以便不需要

gem 'factory_girl_rails', :require => false

然后在你的规范助手

中要求它
require 'factory_girl_rails'