2

我的系统上有guard、spork、cucumber 和rspec。我所有的规格和功能都运行良好,但有一件事让我感到困惑。

当我运行guard init spork时,创建的 Guardfile 包含以下内容:

guard 'spork', :cucumber_env => { 'RAILS_ENV' => 'cucumber' }, :rspec_env => { 'RAILS_ENV' => 'test' } do

但这会导致错误,因为我的 enironments 文件夹中没有 cucumber.rb 文件。所以为了让它工作,我将代码更改为

guard 'spork', :cucumber_env => { 'RAILS_ENV' => 'test' }, :rspec_env => { 'RAILS_ENV' => 'test' } do

现在我的问题是,为什么guard/spork 包含我的应用程序在config/environments 中有一个cucumber.rb 文件?我应该在自己的环境中运行黄瓜吗?我应该手动创建一个 cucumber.rb 文件吗?如果它如此重要,我会认为那rails g cucumber:install会为我做到这一点。

使用最新版本的 cucumber、rspec 和 guard-* gems

4

1 回答 1

2

原因是在早期版本的黄瓜中,cucumber:install生成器实际上创建了自己的黄瓜环境。在以后的 gem 版本中不再是这种情况,但是 guard-spork gem 仍然假定 RAILS_ENV 是 cucumber 而不是 test。我使用相同的 gem 并进行了相同的配置更改,一切都按我的预期工作。

于 2011-06-02T16:37:44.940 回答