首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rspec测试失败,并显示"NameError: uninitialized constant ActionController::TestCase::Assertions“

Rspec测试失败,并显示"NameError: uninitialized constant ActionController::TestCase::Assertions“
EN

Stack Overflow用户
提问于 2011-10-25 21:04:49
回答 2查看 1.7K关注 0票数 1

我正在开发一个示例RoR应用程序,但在使用rspec进行测试时遇到了问题。我已经安装了rspec并运行了测试,但是它们失败了,我不知道为什么。我运行以下命令:

代码语言:javascript
复制
bundle exec rspec spec/

当我运行这段代码时,我得到的错误信息是:

代码语言:javascript
复制
Failures:



1) PagesController GET 'home' should be successful
     Failure/Error: Unable to find matching line from backtrace
     NameError:
       uninitialized constant ActionController::TestCase::Assertions
     # /usr/lib/ruby/vendor_ruby/action_controller/integration.rb:18
     # /usr/lib/ruby/gems/1.8/gems/webrat-0.7.1/lib/webrat/integrations/rails.rb:2
     # /usr/lib/ruby/gems/1.8/gems/webrat-0.7.1/lib/webrat/core/configuration.rb:105:in `mode='
 # /usr/lib/ruby/gems/1.8/gems/rspec-rails-2.6.1/lib/rspec/rails/vendor/webrat.rb:26
 # /usr/lib/ruby/gems/1.8/gems/webrat-

还有更多的错误信息。

我不是RoR方面的专家,真的很感谢你的帮助。提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2011-11-01 00:16:21

RSpec只保证在Rail默认设置下开箱即用。从Gemfile中删除webrat,然后重试。

根据教程的不同,这可能会在后面的步骤中再次破坏。

我对这个问题的解决方案是删除rails的安装包(apt-get remove rails && apt-get autoremove)及其依赖项,因为它显然与gem安装冲突。这是可以理解的。您可以使用gem安装它(sudo gem install rails)

票数 1
EN

Stack Overflow用户

发布于 2011-12-15 01:42:26

我在新安装的Ubuntu11.10上也遇到了同样的问题。

在确保我使用的是最新版本的rspec并且rails是使用

代码语言:javascript
复制
gem install rails 

我还确保卸载ubuntu rails不会留下任何

代码语言:javascript
复制
sudo apt-get autoremove

我也有ruby 1.8.7,所以我切换到了1.9.2

代码语言:javascript
复制
rvm use 1.9.2 

要么是我的ruby版本出了问题,要么是自动删除删除了一些干扰。但在那之后,事情就开始运转了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7889679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档