Ruby on Rails,未初始化的常量Test :: Unit :: TestCase :: Assertions(NameError)

时间:2013-01-21 18:40:02

标签: ruby-on-rails rspec testunit

就像标题所说,当我尝试运行我的rspec测试时,我收到了上述错误。确切的错误是(为了便于阅读而单词包装):

/.rvm/gems/ruby-1.9.3-p374/gems/test-unit-2.4.8/lib/test/unit/testcase.rb:93:in
 `<class:TestCase>': uninitialized constant 
   Test::Unit::TestCase::Assertions (NameError)

在互联网上解决这个问题的主要方法似乎是删除'turn'宝石,但是我没有加载转弯宝石。这是我的Gemfile:

source 'https://rubygems.org'

gem 'rails', '3.2.8'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'devise'
gem 'therubyracer'
gem 'mysql2'
gem 'cucumber'
gem 'email_spec'
gem 'cancan'
gem 'rolify'
gem 'libv8'
gem 'simple_form'

group :test, :development do
  gem 'rspec-rails'
  gem 'factory_girl_rails'
  gem 'test-unit'
end

group :test do
  gem 'cucumber-rails', :require => false
  gem 'capybara'
  gem 'database_cleaner'
end

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'coffee-rails', '~> 3.2.1'
  gem 'bootstrap-sass'
  gem 'sass-rails',   '~> 3.2.3'
  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

我的代码似乎在窒息的部分是我在我的rspec_helper.rb文件中的'rspec / rails'中有这一行。

这个项目用来完美地运行rspecs。只有当我重新安装我的操作系统时才开始表现不佳。

非常感谢任何帮助

2 个答案:

答案 0 :(得分:3)

由于您没有生成新应用,请删除

  

gem'test-unit'

从您的Gemfile中删除gems turn和minitest,然后进行包更新。

答案 1 :(得分:1)

回答:如果您查看我的Gemfile,您会在我的群组中看到一项要求:test,:gem for gem&#39; test-unit&#39;。我评论说它出来就像一个魅力。为什么以及如何运作我不知道,如果有人会介意向前解释。