2012-09-03 44 views
4

我是ROR的新手,想知道Simplecov是否在同一个项目中为TestUnit和RSpec测试提供了测试覆盖率?运行RSpec与现有的TestUnit测试和Simplecov的覆盖范围

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

我知道RSpec和TestUnit都可以存在于同一个项目中,但我一直无法看到Simplecov如何为两个测试框架生成覆盖率。

当我在命令行上捆绑高管耙规范运行,我得到:

Coverage report generated for RSpec to /.../coverage. 0/0 LOC (0.0%) covered.

当我运行bundle exec rake test我得到生成的测试覆盖率。

该计划是将所有从TestUnit迁移到rspec,但有400多个测试,我们希望在迁移到TestUnit的同时,让Simplecov覆盖TestUnit和RSpec测试。

我敢肯定,一定是有什么不正确在我的配置

任何帮助,将不胜感激!

我有以下设置:

--- Rake文件---

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_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_helper .rb -

require 'simplecov' 
SimpleCov.start 'rails' do 
    add_filter "/vendor/" 
end 

ENV["RAILS_ENV"] = "test" 

require File.expand_path('../../config/environment', __FILE__) 
+0

它没有直接解决您的问题,但您可能会发现[此StackOverflow问题](http://stackoverflow.com/q/11377460/567863)的一些参考。 –

回答

0

这不回答你的问题直接,但如果它有帮助,我有一个bash脚本,为你从TestUnit移植到RSpec做了很多工作。它在https://github.com/Noreaster76/porter。你可以用它来转换你的TestUnit文件,并且在清理了一下结果之后,你就不会遇到必须同时运行RSpec和TestUnit的问题。

相关问题