0.0
No commit activity in last 3 years
No release in over 3 years
Filter test results to include only the system under test. A port of minitest-coverage
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.12
~> 10.0
~> 3.0

Runtime

 Project Readme

Rspec::Coverage

Inspired by Ryan Davis' RubyConf 2016 talk.

SimpleCov-backed coverage-tracking tools for RSpec. Coverage is only recorded in a describe block for the class being described, which prevents incidental coverage of unverified lines in collaborators and encourages better test design.

Installation

Add this line to your application's Gemfile:

gem 'rspec-coverage'

And then execute:

$ bundle

Or install it yourself as:

$ gem install rspec-coverage

Usage

As early as possible in your code (before your classes load), add

require 'rspec/coverage'
# Takes the same optional args as SimpleCov.start
RSpec::Coverage.start

and use rspec as normal. Any describe block will automatically filter coverage to the class under test. You can also add a covers: annotation to control filtering.

RSpec.describe "User with collaborators", covers: [User, Collaborator] do
  ...
end

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/jamesdabbs/rspec-coverage. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.