簡體   English   中英

在simplecov覆蓋率報告中包括_spec.rb文件

[英]Include _spec.rb files in simplecov coverage reports

我希望能夠檢查RSpec規范文件本身中代碼的覆蓋范圍。 (這有點不尋常,但是我懷疑文件中有一些未使用的代碼)當前,如果我將rails_helper.rb中的RSpec的配置從

require 'simplecov'
SimpleCov.start 'rails' do
  minimum_coverage 90 # Not the real number
  maximum_coverage_drop 5
end

require 'simplecov'
SimpleCov.start do
  minimum_coverage 90 # Not the real number
  maximum_coverage_drop 5
end

我可以看到spec文件夾中某些文件的覆蓋范圍,例如spec / factories / users.rb,但沒有看到spec文件本身,例如spec / controllers / users_controller_spec.rb。 我怎樣才能做到這一點?

似乎您需要構建一個自定義的SimpleCov配置文件。 但是首先請確保在所有代碼之前,在rails_helper.rb文件的頂部simplecov rails_helper.rb 如果可以,您可以使用以下方法:

SimpleCov.start :my_profile do
  # add some rules here
end

默認情況下 ,僅包括:bundle (排除包含/vendor/bundle/路徑)和:root (排除simplecov root之外的所有文件)過濾器,即應該覆蓋您的spec文件。

確保在運行覆蓋率報告時沒有使用spring ,因為它還會使事情搞砸,請在運行測試之前運行spring stop 如果您仍想將springsimplecov一起使用,則simplecov中有一描述了這一點。

最后,您可以使用https://github.com/danmayer/coverband查找無效的代碼。 我自己沒有使用過,但是simplecov作者推薦使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM