我做了一个小创业板(SmsSafe),它目前有100%的代码覆盖率(根据SimpleCov)。
然而,根据工作服,它只有41%的覆盖率(在此报告)。
造成这种差异的原因似乎是因为工作服将我的gem依赖项中的代码作为代码的一部分,并抱怨这些代码没有被覆盖。
在我看过的其他宝石中,我似乎没有这样做过,我也没有在那些宝石的代码库中看到任何特殊的工作服配置.
我打电话给工作服的方式就是把这个放在我的Rakefile里:
require 'coveralls/rake/task'
Coveralls::RakeTask.new
task :test_with_coveralls => ["test", "coveralls:push"]并通过使用Travis evecute "test_with_coveralls":
script: bundle exec rake test_with_coveralls这是添加根据他们的医生的正确方法。
知道为什么会发生这种事吗?
发布于 2015-01-05 13:11:31
有两个步骤是必要的。
一方面,在以下工作服文档中,将SimpleCov格式化程序设置为工作服:
require "simplecov"
require "coveralls"
SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
SimpleCov::Formatter::HTMLFormatter,
Coveralls::SimpleCov::Formatter
]或
SimpleCov.formatter = Coveralls::SimpleCov::Formatter但是,这并不能解决这个问题,但这是一个没有文档的部分:
调用SimpleCov.start时,请确保筛选出“/gemfiles/供应商”目录
SimpleCov.start do
add_filter "/gemfiles/vendor"
endhttps://stackoverflow.com/questions/27776564
复制相似问题