有人知道在运行cucumber features
时导致这个错误的原因吗?
uninitialized constant DatabaseCleaner (NameError)
有人知道在运行cucumber features
时导致这个错误的原因吗?
uninitialized constant DatabaseCleaner (NameError)
将以下行添加到您的Gemfile中:
gem 'database_cleaner'
这是因为 cucumber-rails
没有自动依赖于 database_cleaner
,因为你可能在构建一个没有数据库的 Rails 应用程序,所以你必须显式地引用它。
spec_helper.rb
中添加了require 'database_cleaner'
以处理这个异常。 - Mike JaremaGiven
子句中积累适当的数据。rake cucumber
而不是直接使用cucumber。通常情况下,生成器将构建一个配置文件,该文件为您需要的database_cleaner
进行了引用。database_cleaner
添加到您的依赖列表中,并在您的测试套件代码中的某个地方放置require 'database_cleaner'
。rails g cucumber:install
时,我的Gemfile中有Webrat,后来我切换到了Capybara...也许这与此有关? - DanScucumber:install
,尝试使用 rake 任务进行测试,而不是直接使用 cucumber
命令,这可能会设置额外的依赖项:https://github.com/aslakhellesoy/cucumber/wiki/Using-Rake - brad我刚遇到了这个问题。我将我的cucumber gem降级到版本1.0.6,然后我得到了这个消息:
uninitialized constant Cucumber::Rails::Database (NameError)
当我使用cucumber 1.0.6(不是最新版本)和database_cleaner v. 1.7.0时。为了修复错误,我只需在Rails 3.1.3上运行此命令:
rails g cucumber:install
它会提示您替换文件features/support/env.rb
。只需回答Y
,然后您就可以再次运行rake cucumber:ok
。
我正在使用Spring,但spring stop
对我不起作用