Home

sawilde edited this page Oct 2, 2014 · 9 revisions

Intro

OpenCover is a new attempt to build a code coverage utility to try and address some of the issues I have encountered whilst maintaining PartCover.

The main aims of this project are

  1. Provide 32 and 64 bit support for .NET2 and .NET4 - I think it is highly unlikely if anyone needs .NET 1/1.1 support.
  2. Better generics handling, though PartCover has been upgraded to handle .NET4 and generics (in both .NET2 and 4) it isn't pretty. I am hoping that by starting again I can resolve these issues and roll some of the changes back into PartCover.
  3. Simpler coverage handling - PartCover also does IL coverage when there are no PDBs to supply sequence information but I have never been convinced of the need for this, it makes the code more complex.
  4. Better test support - I'd like to produce coverage by test but my ultimate aim is to use the information to tell me what tests currently cover the code I am working on i.e. would it be possible to run those tests first and then the rest of the tests to provide faster feedback during development. NOTE. Continuous Integration servers could also use this information to provide faster feedback to users during checkins.

Usage

Usage is a good place to start to see the syntax of OpenCover - it is currently a command line tool. For good reports then I recommend ReportGenerator more details of which can be found on this page Reports.

Agile

I intend to use 'agile' practices to develop this project and I encourage anyone who wishes to be involved to also learn these techniques.

  1. TDD - Test Driven Development - write test, write code, rinse and repeat.
  2. Continuous Integration - I used to use local git repository which is being monitored by a Team City server, now however I use Atlassian Bamboo which monitor mainline builds as well as my own personal commits to my own fork