简单的 cov gem 缺少 Rails 中未经测试的文件



在 Rails 应用程序中使用simple_covgem,我们可以将未测试的文件包含在报告中吗?

  • 如果是,如何?

  • 如果没有,该文件应计入覆盖率百分比,对吧?

尝试编辑您的config/environments/test.rb并设置以下行:

config.eager_load = false

以这种方式true加载整个应用程序并读取它。

在运行具有代码覆盖率的测试套件时,预先加载整个 Rails 应用程序。 将Rails.application.eager_load!添加到spec_helper.rb

Simplecov 减慢了测试速度,这就是我使用 shell 环境变量来打开它的原因。通常我的spec_helper.rb/rails_helper.rb看起来像这样:

if ENV['COVERAGE']
require 'simplecov'
# some SimpleCov setup, e.g. formatters
SimpleCov.start 'rails'
end
ENV['RAILS_ENV'] ||= 'test'
require 'spec_helper'
require File.expand_path('../../config/environment', __FILE__)
require 'rspec/rails'
Rails.application.eager_load! if ENV['COVERAGE']

从版本 0.11.0 开始,应该跟踪的文件可以显式设置(拉取请求)。

对于 Rails 应用程序,这将是:

require 'simplecov'
SimpleCov.start do
track_files '{app,lib}/**/*.rb'
end

或简单使用:

require 'simplecov'
SimpleCov.start 'rails'

并且默认情况下将设置要跟踪的文件(当前相关代码)。

相关内容

  • 没有找到相关文章

最新更新