当我发出以下命令时
jruby -S rspec
它运行以下警告
C:/jruby-1.7.4/lib/ruby/gems/shared/gems/simplecov-0.7.1/lib/simplecov.rb:34 警告:跟踪(例如set_trace_func)不会捕获没有--debug标志的所有事件
所以这里我的问题是如何在运行 rspec 时使用这个 --debug 选项
当我发出以下命令时
jruby -S rspec
它运行以下警告
C:/jruby-1.7.4/lib/ruby/gems/shared/gems/simplecov-0.7.1/lib/simplecov.rb:34 警告:跟踪(例如set_trace_func)不会捕获没有--debug标志的所有事件
所以这里我的问题是如何在运行 rspec 时使用这个 --debug 选项
我正在使用 JRuby 1.7.11 运行 simplecov (0.8.2),我没有遇到问题。这是我的设置:
.rspec:
--format documentation
--color
在 spec_helper.rb 中:
require 'simplecov'
SimpleCov.start 'rails'
我是否使用以下命令运行默认 rake 任务:
jruby -S bundle exec rake
或者像你一样运行 rspec,我会收到调试警告。但是 simplecov 实际上仍然可以正常工作。我可以看到各种文件的覆盖范围。
我想我已经找到了解决方案:当我在没有 --debug 选项的情况下执行 rspec
jruby -S rspec
它给了我97.8%的覆盖率
和 --debug
jruby --debug -S rspec
它给了我98.46%的覆盖率
而且我还使用 ruby 确认了
bundle exec rspec
它给了我98.36% 的覆盖率
所以我认为使用 --debug 选项是更好的选择。
如果您不想要警告之类的警告:Coverage [7] 提供的覆盖率数据超出了行数
然后您可以将以下行添加到 simplecov 配置块
SimpleCov.start 'rails' do
add_filter 'app/views'
end