2

私はテストの大ファンであり、現在のカバレッジ レポートを実行すると、.rb ファイルを含む lib サブフォルダーが simplecov によって検出されないことに気付きました。

これが私の spec_helper.rb ファイルでのセットアップです。

if ENV['COVERAGE']
  require 'simplecov'
  SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
    SimpleCov::Formatter::HTMLFormatter
  ]
  SimpleCov.minimum_coverage 90
  SimpleCov.start do
    coverage_dir 'tmp/coverage'
    add_filter '/.bundle/'
    add_filter '/spec/'
    add_filter '/config/'
    add_group 'Models', 'app/models'
    add_group 'Controllers', 'app/controllers'
    add_group 'Services', 'app/services'
    add_group 'Helpers', 'app/helpers'
    add_group 'Lib', 'lib'
    add_group 'Mailers', 'app/mailers'
    add_group "Long Files" do |src_file|
      src_file.lines.count > 100
    end
    add_group 'Ignored Code' do |src_file|
      open(src_file.filename).grep(/:nocov:/).any?
    end
  end
end

lib/modules今日、そのフォルダーにはあまりありませんが、なぜそれらが入ってこないのかを理解しようとしています.現在、レポートに自分のフォルダーが表示されることを期待していました.中身。

=> git の問題 #351

また、私はこれらの解決策を試してみましたが、うまくいきませんでした:

4

1 に答える 1

7

私はかつて同様の問題を抱えていました.SimpleCovが開始される前に、報告されていないコードの一部がロードされていたことが判明しました. たとえば、rakeコマンドを介してテストを実行している場合、Rakefile が spec_helper.rb スクリプトを呼び出す前にいくつかのライブラリを取り込むと、それらのライブラリは報告されません。

于 2014-12-01T18:22:09.357 に答える