【问题标题】:When should I use development vs testing group in gemfile for testing gems?我什么时候应该在 gemfile 中使用开发与测试组来测试 gem?
【发布时间】:2012-01-30 12:39:54
【问题描述】:

由于某种原因,这还没有回家,我想知道是否有人可以帮助解释..

我注意到在安装 'guard' gem 时,他们建议在 gemfile 中的 'development group' 中放置很多 gem,例如 'growl' 和 'rb-notifu':https://github.com/guard/guard..

Ryan Bates 似乎在一个屏幕演员中似乎将其中的许多内容放在“开发”和“测试”中:http://railscasts.com/episodes/264-guard?view=asciicast

但在另一个方面将其全部放在“测试”中:http://railscasts.com/episodes/275-how-i-test

很高兴了解这一点,因此我不必一直参考教程。谢谢!

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 rubygems


    【解决方案1】:

    您在开发环境中运行的 Gem 应该同时出现在开发组和测试组中。您从开发中运行 rspec cucumberguard 之类的东西,它们在测试环境中运行,您在开发中需要它们来运行 rake 任务和可执行文件。

    仅在测试模式下运行的 Gem,例如 capybara email_speclaunchy 只能存在于测试组中并且仍然可以正常运行。

    我希望这有助于解决问题。

    作为一般规则,可执行的 gems 需要在两者中。另外,如果您不确定,也可以将其放在两组中。

    编辑

    如果您使用的 gem 具有生成器 (rails generate),则它需要同时存在于测试和开发中。

    【讨论】:

    • 谢谢,好像 rake 和可执行文件很重要。谢谢
    • 这条评论直接来自 rails/rspec 文档:“将其添加到 :development 组并不是绝对必要的,但没有它,生成器和 rake 任务必须在 RAILS_ENV=test 之前”跨度>
    猜你喜欢
    • 1970-01-01
    • 2017-04-29
    • 2012-06-15
    • 2013-04-23
    • 1970-01-01
    • 1970-01-01
    • 2016-12-07
    • 2016-05-31
    • 1970-01-01
    相关资源
    最近更新 更多