2

我注意到有些人把 rspec-rails 放到开发组,有些人把它放到开发和测试组,为什么?而对于这些常见的宝石,

gem 'faker'
gem 'populator'
gem 'rspec-rails'
gem 'factory_girl_rails'
gem 'guard-spork'
gem 'guard-rspec'
gem 'spork-rails'
gem 'capybara'
gem 'database_cleaner'
gem 'email_spec'
gem 'pry-rails'

你放哪个组,原因是什么?

有没有关于这个的明确指南?

例如,我只将'pry-rails'放在开发组中,因为我不需要在测试组中加载它,我只将它用于调试开发中的某些东西

谢谢!

4

2 回答 2

2

将它们准确地放在您需要它们的地方。

其中大部分是与测试相关的 gem,因此应该只加载到test组中,但有些(例如 factory_girl、faker 和 pry-rails)在development组中也可能有用——例如,您可以使用 FactoryGirl 来填充虚假的开发环境。

于 2013-08-26T11:13:45.280 回答
1

实际上,您可以像这样定义共享组:

group :development, :test do
 #gems required in both env, like faker, factory girl, pry
end

group :development do
 #gems required only in dev like better_errors
end

group :test do
 #gems required only in test like capybara, rspec...
end
于 2013-08-26T10:21:05.233 回答