使用SimpleCov进行Ruby代码覆盖率统计
还在为Ruby代码的质量担心吗?SimpleCov
来帮助你了!
SimpleCov是啥
SimpleCov
是一个Ruby代码覆盖率分析工具。它使用Ruby内置的代码覆盖率库,但是提供一个更清晰、简单的API用于过滤、分组、合并、格式化和显示这些数据。
看看在我们项目中实际应用中的效果:
代码覆盖率总览:
单个文件代码覆盖率:
如何使用
SimpleCov
只支持Ruby1.9以上版本(1.8请使用rcov),以minitest
举例说明:
首先在
Gemfile
中增加SimpleCov
1gem 'simplecov', :require => false, :group => :test然后在rakefile中增加
123456789desc 'Run test with simple coverage test'task :cov dorequire 'simplecov'SimpleCov.startDir.glob(File.join(__dir__, 'test', '**', '*.rb')) { |file|require file}end注意:
SimpleCov.start
必须在你的测试代码之前运行,才能跟踪代码覆盖率。之后加入没有任何效果!运行rake任务
1rake cov在
coverage
目录查看覆盖率报告
总体来说,simplecov
是一个简单易用的代码率覆盖统计工具,值得一试。
更详细的文档资料请参考:https://github.com/colszowka/simplecov