私は ROR を初めて使用し、Simplecov が同じプロジェクト内の TestUnit テストと RSpec テストの両方のテスト カバレッジを提供するかどうか疑問に思っています。
RSpec で作成したいくつかのテストを、スタンドアロンの Web アプリから、現在 TestUnit を使用している既存の Web アプリに移行中です。
RSpec と TestUnit の両方が同じプロジェクトに存在できることは知っていますが、Simplecov が両方のテスト フレームワークのカバレッジを生成する方法を確認できませんでした。
コマンドライン bundle exec rake spec で実行すると、次のようになります。
Coverage report generated for RSpec to /.../coverage. 0 / 0 LOC (0.0%) covered.
実行するbundle exec rake test
と、テスト カバレッジが生成されます。
計画はすべてを TestUnit から rspec に移行することですが、400 以上のテストがあるため、TestUnit に移行する間、Simplecov で TestUnit と RSpec の両方のテストをカバーしたいと考えています。
私の設定に何かが間違っているに違いないと確信しています
どんな助けでも大歓迎です!
私は次の設定をしています:
--- レーキファイル ---
require File.expand_path('../config/application', __FILE__)
require 'rake'
require 'simplecov'
if Rails.env == 'test' || Rails.env == 'development'
require 'ci/reporter/rake/test_unit'
require 'ci/reporter/rake/rspec'
end
SimpleCov.start 'rails' do
add_filter "/test/"
add_filter "/spec/"
end
-- spec/spec_helper.rb --
ENV["RAILS_ENV"] ||= 'test'
require 'simplecov'
SimpleCov.start 'rails'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'rspec/autorun'
-- test/test_helper.rb --
require 'simplecov'
SimpleCov.start 'rails' do
add_filter "/vendor/"
end
ENV["RAILS_ENV"] = "test"
require File.expand_path('../../config/environment', __FILE__)