Метрика Fu: RCov не может загрузить spec_helper - PullRequest
2 голосов
/ 15 июля 2010

Я пытаюсь запустить metric_fu в приложении Rails 3.Все хорошо, за исключением rcov.У меня настроен RSpec, и мои тесты соответствуют формату spec / ** / *. Rb и отлично работают в RSpec.Однако, пытаясь проверить покрытие с помощью rcov, я получаю следующие ошибки:

** Running the specs/tests in the [test] environment

No file to analyze was found. All the files loaded by rcov matched one of the
following expressions, and were thus ignored:
[/\A\/Users\/Eric\/\.rvm\/rubies\/ruby\-1\.8\.7\-p299\/lib/,
 /\btc_[^.]*.rb/,
 /_test\.rb\z/,
 /\btest\//,
 /\bvendor\//,
 /\A\/Users\/Eric\/\.rvm\/gems\/ruby\-1\.8\.7\-p299@-backend\/gems\/rcov\-0\.9\.8\/lib\/rcov\/formatters\/base_formatter\.rb\z/,
 /\bvendor\//,
 /\bconfig\//,
 /\benvironment\//,
 /\/gems\//,
 /\/Library\//,
 /\/usr\//,
 /spec/]

You can solve this by doing one or more of the following:
* rename the files not to be ignored so they don't match the above regexps
* use --include-file to give a list of patterns for files not to be ignored
* use --exclude-only to give the new list of regexps to match against
* structure your code as follows:
      test/test_*.rb  for the test cases
      lib/**/*.rb     for the target source code whose coverage you want
  making sure that the test/test_*.rb files are loading from lib/, e.g. by 
  using the -Ilib command-line argument, adding  
    $:.unshift File.join(File.dirname(__FILE__), "..", "lib")
  to test/test_*.rb, or running rcov via a Rakefile (read the RDoc
  documentation or README.rake in the source distribution).
/Users/Eric/.rvm/rubies/ruby-1.8.7-p299/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- spec_helper (LoadError)
    from /Users/Eric/.rvm/rubies/ruby-1.8.7-p299/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
    from ./spec/models/account_spec.rb:1
    from /Users/Eric/.rvm/gems/ruby-1.8.7-p299@backend/gems/rcov-0.9.8/bin/rcov:511:in `load'
    from /Users/Eric/.rvm/gems/ruby-1.8.7-p299@backend/gems/rcov-0.9.8/bin/rcov:511
    from /Users/Eric/.rvm/gems/ruby-1.8.7-p299@backend/bin/rcov:19:in `load'
    from /Users/Eric/.rvm/gems/ruby-1.8.7-p299@backend/bin/rcov:19

Когда я запускаю rcov напрямую, кажется, что часть проблемы заключается в том, что rcov неправильно загружает spec_helper в мои спецификации,Обязательный как "require 'spec_helper'".

Любая помощь о том, как решить эту проблему?Спасибо.

1 Ответ

0 голосов
/ 15 июля 2010

Добавление «-Ispec» к конфигурации Metric-Fu исправляет это.

...