2012-09-03 66 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的問題。

相關問題