Тестирование Rspec завершается с ошибкой «NameError: неинициализированная константа ActionController :: TestCase :: Assertions» - PullRequest
1 голос
/ 25 октября 2011

Я работаю над образцом приложения RoR, и у меня возникают проблемы с его тестированием с помощью rspec. Я установил и запускаю тесты rspec, но они не проходят, и я не знаю почему. Я запускаю команду:

bundle exec rspec spec/

И когда я запускаю это; это сообщение об ошибке, которое я получаю:

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 и буду очень признателен за помощь. Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 31 октября 2011

RSpec гарантированно работает только из коробки по умолчанию для Rail. Удалите webrat из вашего Gemfile и попробуйте снова.

В зависимости от учебника, это может снова сломать вещи на последующих шагах.

Мое решение проблемы состояло в том, чтобы удалить пакет rails (apt-get remove rails && apt-get autoremove) и его зависимости, потому что он явно конфликтовал с установкой gem. Вполне понятно. Вы можете установить его с помощью gem (sudo gem install rails)

0 голосов
/ 14 декабря 2011

У меня была такая же проблема при новой установке Ubuntu 11.10.

Убедившись, что я использовал последние версии rspec и что rails был установлен с помощью

gem install rails 

Я также гарантировал, что удаление рельсов Ubuntu не оставит никаких ошибок с

sudo apt-get autoremove

У меня тоже был ruby ​​1.8.7, поэтому я перешел на 1.9.2

rvm use 1.9.2 

Либо моя версия ruby ​​была проблемой, либо автоматическое удаление удалило некоторые помехи. Но после этого все заработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...