我是ROR的新手,想知道Simplecov是否在同一项目中同时提供TestUnit和RSpec测试的测试范围?

我正在将我们在RSpec中编写的一些测试从一个独立的Web应用程序迁移到当前使用TestUnit的现有Web应用程序。

我知道RSpec和TestUnit都可以生活在同一个项目中,但是我还看不到Simplecov如何为两个测试框架生成覆盖率。

当我在命令行捆绑执行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测试。

我确定配置中一定有不正确的地方

任何帮助将非常感激!

我有以下设置:

-Rakefile-

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__)

最佳答案

这不能直接回答您的问题,但是如果有帮助,我有一个bash脚本,可以为您完成从TestUnit到RSpec的移植工作。在https://github.com/Noreaster76/porter。您可以使用它来转换您的TestUnit文件,并且在稍微整理一下结果之后,就不必同时运行RSpec和TestUnit。

09-04 21:32