2011-10-25 8 views
1

サンプルRoRアプリケーションで作業していて、rspecでテストするのに問題があります。私はrspecをインストールしてテストを実行していますが、失敗していますが、理由はわかりません。私は次のコマンドを実行します:"NameError:初期化されていない定数ActionController :: TestCase :: Assertions"で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の専門家ではなく、本当に助けに感謝します。前もって感謝します。

+0

あなたの 'Gemfile'には、どのバージョンのwebratとRspecが入っていますか?また、 'gem list'はあなたが使っていることをあなたに伝えますか? –

+0

宝石 'RSpecのレール'、 '2.6.1' 宝石 'webrat'、 '0.7.1' – Hugs

+0

RSpecの(2.6.0) RSpecのコア(2.6.4) RSpecの-期待(2.6.0) rspec-mocks(2.6.0) rspec-rails(2.6.1) webrat(0.7.1)これはgem list出力からのものです。 – Hugs

答えて

1

RSpecは、レールのデフォルト値については、すぐに動作することが保証されています。あなたのGemfileからwebratを削除してもう一度やり直してください。

チュートリアルによっては、後の手順で再度問題が発生する可能性があります。

問題に対する私のソリューションは、(apt-getのレール& & apt-getを自動的削除削除)それは明らかにインストール宝石と衝突したため、とその依存関係をレールのパッケージのインストールを削除することでした。かなり理解できる。 gem(sudo gem install rails)でインストールすることができます

+0

よろしくお願いします。 – Melki

0

新しいUbuntu 11.10のインストールで同じ問題が発生しました。

を確認した後、私はまた、Ubuntuのレールをアンインストールすると

sudo apt-get autoremove 

Iと任意のartifictsを残していないことを保証

gem install rails 

使用してインストールされたレールRSpecのの、その最新バージョンを使用していましたまた、ルビー1.8.7だったので、私は1.9.2に切り替えました。

rvm use 1.9.2 

私のルビーバージョンonに問題があったか、またはautoremoveが干渉を取り除いた。しかしその後は事が進んでいた。

関連する問題