Audience
Individuals seeking a solution that can report a more accurate picture of their code usage
About DeepCover
Deep Cover aims to be the best coverage tool for Ruby code. More accurate line coverage, and branch coverage. It can be used as a drop-in replacement for the built-in Coverage library. It reports a more accurate picture of your code usage. In particular, a line is considered covered if and only if it is entirely executed. Optionally, branch coverage will detect if some branches are never taken. MRI considers every method defined, including methods defined on objects or via define_method, class_eval, etc. For Istanbul output, DeepCover has a different approach and covers all def and all blocks. DeepCover doesn't consider loops to be branches, but it's easy to support them if needed. Even after DeepCover is required and configured, only a very minimal amount of code is actually loaded and coverage is not started. To make it easier to transition for projects already using the builtin Coverage library deep-cover can inject itself into those tools.