Ruby代码覆盖率:SimpleCov + MiniTest?

问题描述 投票:0回答:1

我将SimpleCov集成到我的Ruby项目(简单的Ruby Gem项目,无框架)中,该项目使用MiniTest进行测试。

这里是test_helper.rb

  require 'simplecov'
  SimpleCov.start

  require 'minitest/autorun'

我所有的测试文件都有require 'test_helper.rb'

运行所有测试(从RubyMine或与bundle exec rake一起运行)均有效,并且创建了HTML报告。

但是,它涵盖了...我的一个测试课程?我希望看到测试调用的所有类的覆盖率报告(它们在标准/lib文件夹下)。

这是慷慨的报告:

https://user-images.githubusercontent.com/6305156/80513538-df68d080-8987-11ea-9858-43a3a2673e31.png

到项目的链接:https://github.com/ruby-ee/ruby-stream-api/tree/10这是一个简单的,刚刚起步的Ruby Gem。

非常感谢您的帮助。谢谢!

ruby rake bundler minitest simplecov
1个回答
0
投票

我设法解决了。 SimpleCov文档指出,必须先提供SimpleCov,并且必须先发出SimpleCov.start,然后才需要任何应用程序代码!

我在require中有一个*.gemfile指令,因此我必须添加

require 'simplecov'
SimpleCov.start do     # ommit test classes from the report
  add_filter 'test'
end

就在这里,而不是test_helper.rb

© www.soinside.com 2019 - 2024. All rights reserved.