我应该使用"rake spec"还是"rspec"(不能让"rake spec"工作)?

sta*_*fry 12 rake rspec ruby-on-rails

我在Rails 3.2上,我正在使用rspec(2.11.1).当我使用"rake spec"运行我的测试套件时,我会失败.当我用"rspec"运行它时,一切都过去了.我已经看到过这个问题的其他提及,但没有明确的解释正在发生的事情和最佳实践.

如果我做"rake spec"或"rake tmp:clear && rake spec"我的测试失败了.

如果我执行"rspec"或"rspec spec"或"rake db:test:prepare && rspec",我的测试通过.

我认为唯一的区别是rake做了"db:test:prepare"但是如果我在运行rspec之前手动执行该操作,那么我的测试就会通过,所以这不是故事的全部内容.

做了一些阅读后,我改变了我的Gemfile.之前我根据"RSpec Book"(p328)设置了它,它描述了将rspec gem放在"group:development,:test"块中.阅读了其他一些SO帖子后,我删除了":development"并做了一个捆绑.现在"rake spec"什么都不做."rspec"仍然像以前一样工作.

非常困惑...

Mik*_*ike 9

试试跑步 RAILS_ENV=test rake spec