Test :: Unit 2.x тесты запускаются с граблей, но не проходят автотест - PullRequest
1 голос
/ 19 июня 2010

У меня проблемы с запуском моих модульных тестов Rails через автотест с использованием Test :: Unit 2.0.6. Запуск тестов через rake test:units работает отлично, но когда я запускаю тесты из автотеста, я получаю следующее:

/Code/projectdir/vendor/rails/activesupport/lib/active_support/dependencies.rb:105:in `const_missing': uninitialized constant Test::Unit::TestResult::TestResultFailureSupport (NameError)
 from /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'
 from /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'
 from /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'
 from /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'
 from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/test/unit.rb:278
 from -e:1

Версия:

  • Mac OS X 10.6.3
  • ruby ​​1.8.7 (2009-06-08, уровень обновления 173) [universal-darwin10.0]
  • Рельсы 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)

Проблема также возникает с тестовым модулем 2.0.9. Я попробовал предложения в Получение неинициализированной постоянной ошибки при попытке запустить тесты и http://floehopper.lighthouseapp.com/projects/22289-mocha/tickets/50,, но все равно не повезло.

Автотест работает нормально, если я удаляю утверждения, требующие Test :: Unit 2.x, и удаляю гем test-unit. К сожалению, мне нужно использовать утверждения 2.x.

Есть идеи? Заранее благодарим за любую помощь.

Ответы [ 2 ]

1 голос
/ 26 июля 2010

У меня та же проблема: тесты работают нормально при запуске с граблей. Но когда я пытаюсь выполнить автотест, я получаю ту же ошибку:

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

Я использую musta 2.10.3, mocha 0.9.8 и test-unit 2.1.0. Я уже обошелся с порядком загрузки драгоценных камней, чтобы сделать мокко и должен счастливым, и, как я уже сказал, с тестом граблей все в порядке. Я пробовал несколько версий ZenTest (4.3.3, 4.1.1). Я пробовал автономную версию автотеста (4.3.2). Те же результаты. Я пытался использовать тестовый модуль 1.2.3 вместо 2.1.0, но это нарушает другие части моих тестов.

0 голосов
/ 18 ноября 2011

Я столкнулся с подобной проблемой, и хотя я знаю, что это действительно поздно, проблема заключалась в том, что у меня не было установленных автотестов.

...