1

Test::Unit 2.0.6 を使用して autotest 経由で Rails 単体テストを実行する際に問題があります。経由rake test:unitsでのテストの実行は完全に機能しますが、autotest からテストを実行すると、次のようになります。

/Code/projectdir/vendor/rails/activesupport/lib/active_support/dependencies.rb:105:`const_missing' 内: 初期化されていない定数 Test::Unit::TestResult::TestResultFailureSupport (NameError)
 /Library/Ruby/Gems/1.8/gems/test-unit-2.0.6/lib/test/unit/testresult.rb:28 より
 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
 from /Code/projectdir/vendor/rails/activesupport/lib/active_support/dependencies.rb:158:in `require'
 /Library/Ruby/Gems/1.8/gems/test-unit-2.0.6/lib/test/unit/ui/testrunnermediator.rb:9 より
 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
 from /Code/projectdir/vendor/rails/activesupport/lib/active_support/dependencies.rb:158:in `require'
 /Library/Ruby/Gems/1.8/gems/test-unit-2.0.6/lib/test/unit/ui/console/testrunner.rb:11 から
 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
 from /Code/projectdir/vendor/rails/activesupport/lib/active_support/dependencies.rb:158:in `require'
 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/test/unit/autorunner.rb:25 より
 from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/test/unit/autorunner.rb:214:in `[]'
 from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/test/unit/autorunner.rb:214:in `run'
 from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/test/unit/autorunner.rb:12:in `run'
 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/test/unit.rb:278 より
 -e:1 から

バージョン:

  • Mac OS X 10.6.3
  • ruby 1.8.7 (2009-06-08 パッチレベル 173) [universal-darwin10.0]
  • Rails 2.3.5 (サスペンダーベース)
  • 自動テスト (4.3.2)
  • autotest-fsevent (0.1.3)
  • autotest-うなり声 (0.1.7)
  • 自動テストレール (4.1.0)
  • ZenTest (4.3.3)
  • テストユニット (2.0.6)

この問題は、test-unit 2.0.9 でも発生します。テストを実行しようとすると、初期化されていない定数エラーを取得するとhttp://floehopper.lighthouseapp.com/projects/22289-mocha/tickets/50で提案を試しましたが、まだ運がありません。

Test::Unit 2.x を必要とするアサーションを削除し、test-unit gem を削除すると、オートテストは問題なく動作します。残念ながら、2.x アサーションを使用する必要があります。

何か案は?ご協力いただきありがとうございます。

4

2 に答える 2

1

私は同じ問題を抱えています: rake から実行すると、テストは正常に動作します。しかし、自動テストを試みると、同じエラーが発生します。

`const_missing': uninitialized constant Test::Unit::TestResult::TestResultFailureSupport (NameError)

shoulda 2.10.3、mocha 0.9.8、および test-unit 2.1.0 を実行しています。mocha と shoulda を幸せにするために、gem の読み込み順序を既にいじっていました。ZenTest の複数のバージョン (4.3.3、4.1.1) を試しました。autotest (4.3.2) のスタンドアロン バージョンを試しました。同じ結果です。2.1.0 の代わりに test-unit 1.2.3 を使用してみましたが、テストの他の部分が壊れます。

于 2010-07-26T18:48:58.417 に答える
0

私は同様の問題に遭遇しました。これが本当に遅いことはわかっていますが、問題は autotest-rails がインストールされていなかったことです。

于 2011-11-18T09:34:17.477 に答える