All Projects → OpenCover → Opencover

OpenCover / Opencover

Licence: other
A code coverage tool for .NET 2 and above (WINDOWS OS only), support for 32 and 64 processes with both branch and sequence points

Projects that are alternatives of or similar to Opencover

Profimp
Python import profiler
Stars: ✭ 52 (-95.86%)
Mutual labels:  profiler
Example Java
Java Example
Stars: ✭ 64 (-94.9%)
Mutual labels:  coverage
Pitest
State of the art mutation testing system for the JVM
Stars: ✭ 1,185 (-5.65%)
Mutual labels:  coverage
Xcperfect
Make your xccov outputs prettier ✨
Stars: ✭ 56 (-95.54%)
Mutual labels:  coverage
Devel Nytprof
Devel::NYTProf is a powerful feature-rich source code profiler for Perl. (Mostly in maintenance mode, so PRs are much more likely to be acted upon than Issues.)
Stars: ✭ 61 (-95.14%)
Mutual labels:  profiler
Example Gradle
Stars: ✭ 68 (-94.59%)
Mutual labels:  coverage
Piggly
PL/pgSQL stored procedure code coverage tool
Stars: ✭ 47 (-96.26%)
Mutual labels:  coverage
React Base
atSistemas React/Redux Isomorphic Platform
Stars: ✭ 82 (-93.47%)
Mutual labels:  coverage
Miku Luaprofiler
Stars: ✭ 1,125 (-10.43%)
Mutual labels:  profiler
Cols Agent Tasks
Colin's ALM Corner Custom Build Tasks
Stars: ✭ 70 (-94.43%)
Mutual labels:  coverage
Dntprofiler
DNTProfiler is an EF 6.x and NH 4.x profiler.
Stars: ✭ 59 (-95.3%)
Mutual labels:  profiler
Vcprofiler
An accurate and simple tool uses KVO to measure the time cost of every view controller.
Stars: ✭ 61 (-95.14%)
Mutual labels:  profiler
Humbug
Humbug is a Mutation Testing framework for PHP to measure the real effectiveness of your test suites and assist in their improvement. It eats Code Coverage for breakfast.
Stars: ✭ 1,159 (-7.72%)
Mutual labels:  coverage
Kahlan
✔️ PHP Test Framework for Freedom, Truth, and Justice
Stars: ✭ 1,065 (-15.21%)
Mutual labels:  coverage
Gdbprofiler
Rich man's profiler, a profiler for native OCaml and other executables
Stars: ✭ 75 (-94.03%)
Mutual labels:  profiler
Example Java Maven
Stars: ✭ 48 (-96.18%)
Mutual labels:  coverage
Gradle Clover Plugin
Gradle plugin for generating a code coverage report using Clover
Stars: ✭ 67 (-94.67%)
Mutual labels:  coverage
Dspot
Automatically detect and generate missing assertions for Junit test cases (also known as test amplification)
Stars: ✭ 83 (-93.39%)
Mutual labels:  coverage
Go Script Bash
Framework for writing modular, discoverable, testable Bash scripts
Stars: ✭ 77 (-93.87%)
Mutual labels:  coverage
Apexunit
ApexUnit is a powerful continuous integration tool for the Force.com platform
Stars: ✭ 69 (-94.51%)
Mutual labels:  coverage

OpenCover is a code coverage tool for .NET 2 and above (Windows OSs only - no MONO)*, with support for 32 and 64 processes and covers both branch and sequence points. OpenCover was started after attempts to make PartCover support 64-bit processes got just a little too complicated.

  • OpenCover should have few issues with any application compiled against any of the .NET Full Frameworks. Applications targetting .Net Core may encounter issues but using the -oldstyle switch usually works.

The latest releases can be downloaded from releases. Alternatively why not try the nuget package (this is the most popular).

Active Integrations
Build Build status
Coverage Coveralls Coveralls
Quality Coverity
Quality CodeQL
Nuget Nuget Nuget
Agreements CLA assistant
Disabled Integrations
Coverage SonarCloud SonarCloud
Quality SonarCloud

Master

The primary repo for the project is on GitHub and is also where the wiki and issues are managed from.

Requirements

  1. .NET 4.7.2 is needed to run opencover

Submissions and Community Licence Agreement

You will be asked to agree to a CLA as part of the submission process; first pull request only and it's all automatic no printing and signing etc. You can read the agreement here - OpenCover CLA and you can read our Q&A on the wiki as to why.

WIKI

Please review the wiki pages on how to use OpenCover and take particular interest in the Usage guide.

Issues

Please raise issues on GitHub, if you can repeat the issue then please provide a sample to make it easier for us to also repeat it and then implement a fix. Please do not hijack unrelated issues, I would rather you create a new issue than add noise to an unrelated issue.

Dropbox is very useful for sharing files alternatively you could create a gist.

Licence

All Original Software is licensed under the MIT Licence and does not apply to any other 3rd party tools, utilities or code which may be used to develop this application.

If anyone is aware of any licence violations that this code may be making please inform the developers so that the issue can be investigated and rectified.

Visual Studio Integration

The following add-in for visual studio can be used to run and view coverage results within the IDE https://github.com/FortuneN/FineCodeCoverage

Integration Test support

OpenCover was initially created to support unit testing techniques such as TDD and tools like NUnit and MSTest. Over time others have found ways to use OpenCover for integration testing especially in tricky scenarios such as IIS and Windows Services. I'll put links here as to how people have achieved this however as they say YMMV (Your Mileage May Vary).

Mono support

It isn't, sorry - this tool uses the profiler API that is currently only available to .NET Frameworks running on the Windows platform.

IIS support

Please refer to the wiki - IIS Support

DNX support

Please refer to the wiki - DNX Support

Win8/Win10 Application Support

Not yet implemented. Sorry no user call/demand for it, I assume the WPF way of separating model and UI has led to people getting all they need from unit-tests; I know how that is how it works for me.

Service support

Please refer to the wiki - Service Support

Silverlight support

Please refer to the wiki - Silverlight support

Building

You will need:

To build from the command line:

  1. Visual Studio VS2019 (Community Edition) with C#, C++, .Net Core
  2. .NET SDK 2.2.402 (https://dotnet.microsoft.com/download/thank-you/dotnet-sdk-2.1.4-windows-x64-installer)
  • runtimes ???
  1. WiX 3.11 or later (http://wixtoolset.org/releases/) and Votive 2019 (https://marketplace.visualstudio.com/items?itemName=WixToolset.WixToolsetVisualStudio2019Extension)
  2. Windows SDK 10 (10.0.18362.0) and .NET Framework Tools (https://msdn.microsoft.com/en-us/windows/desktop/bg162891.aspx)

To build and run from within visual studio: 5. SpecFlow for Visual Studio 2017 (https://marketplace.visualstudio.com/items?itemName=TechTalkSpecFlowTeam.SpecFlowForVisualStudio) 6. Microsoft .NET Framework 4.7.2 Developer Pack (https://dotnet.microsoft.com/download/visual-studio-sdks)

All other software should be included with this repository.

NANT scripts (encapsulated by the build.bat file) are used to build the project outside visual studio and will run all unit tests.

To build the code in 32-bit Debug mode just run Build in the root of the project folder.

To build a release package including installer, zip and nuget packages use

build create-release

Build Server

The OpenCover team is using Appveyor for automated building. It runs a staged equivalent of

build create-release

and stores all the information about tests, coverage and other build artefacts; you can use these builds if you want to be 'cutting' edge but support will be limited.

We have also suppied the appveyor.yml to make it easy for any forks to have their own builds on AppVeyor. If you send a pull-request the CI system will test your commits (which saves the team time if we do it ourselves)

Coverage

The current OpenCover coverage (found by dogfooding OpenCover on its own tests) can be viewed here

Coveralls

Reports

For local viewing of the output from OpenCover start here.

Latest Drop as ZIP

No Git? Don't worry you can download the latest code as a zip file.

Thanks

I would like to thank

  • AppVeyor for allowing free build CI services for Open Source projects,
  • Coveralls for allowing free services for Open Source projects,
  • NDepend for my NDepend licence - I don't use it nearly as much as I know I should do,
  • the guys at CodeBetter, Devlicious and Los Techies who orignally arranged my MSDN licence all those years ago without which I doubt I'd have been able to start OpenCover (now no longer needed as we can build OpenCover using the Community Editions),
  • the NextGenUG and their free swag from where I got lots of useful tools,

I would also like to thank my family, employers, colleagues and friends for all their support.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].