In software testing, there are several ways to measure the coverage of testing. Code coverage method is one of the most important techniques.
Using the code coverage tools, one can identify the quantity of code tested while executing tests. In simple words, code coverage tells us how much of the source code is covered by a set of test cases. It is an important metric to maintain a standard quality of QA efforts.
Code coverage is measured in percentage of the number of lines executed out of the total number of code lines while running tests.
1. CodeCover tool
This tool is an extensible open source glass box testing tool that can be used as a code coverage for Java software. It was developed in 2007 at the University of Stuttgart. It can be executed in the command line, Eclipse, and Ant.
Features:
- It is a glass box testing tool for java applications.
- It covers statements, loops, branches, etc along with term coverage, question mark operator coverage and synchronized coverage.
- The reports are generated in the template engine velocity format
2. Cobertura
Cobertura is one of the popular open source code coverage tools. It allows you to execute tasks via Maven and Ant, or the Cobertura CLI. You can embed with other multiple QA tools.
Features:
- Allows you to measure coverage without having the source code
- It is one of the best java code coverage tools which helps you to find which parts of your Java program are lacking test coverage
- Allows you to represent reports in HTML and XML format
- Helps you to test lines and branches of the class & method
- It supports Java 7, Java 8, Java 9 and Java 10.
- Cobertura can be executed from command line or ant.
- After compilation, it calculates java bytecode.
- It covers all the criteria of code coverage including branches, class, package etc.
- The reports are produced in HTML or XML.
- These reports have the features of filtering, ascending and descending
3. OpenClover
OpenClover tool helps you to measures code coverage for Java and Groovy and collects over 20 code metrics. It helps you to display untested areas of your application. It is one of the best test coverage tools that helps you to combine coverage and metrics to find the riskiest code.
Features:
- Helps you to runs your test faster
- Allows you to focus on what’s necessary for your test
- Both branch and statement coverage support
- Allows you to generate XML-based report that, combined with ReportGenerator, produces TML-based report on coverage
- Helps you to keep the balance between application and tests
- It is for all .Net 2 and above software.
- It can be installed by NuGet package, MSI or ZIP file.
- It gives 64 and 32-bit support for .Net 4 and .Net 2.
- It provides simple code coverage process.
- It also provides better Generics handling than PartCover.
- It is a command line tool.
- It gives reports as an XML output file, which is used to produce graphical reports.
- This is done with the support of the Report generator tool.
4. NCover
NCover is one of the advanced level code coverage tools for.Net programs and applications. It provides support for statement coverage and branch coverage. This code coverage tool is available on open source and as well as on commercial license.
Features:
- .NET code coverage according to your customized needs
- Helps you to test, track and manage a unified coverage number across entire teams
- Detailed and centralized data about coverage
- NCover tool is for .Net platform only.
- This covers statement and branch coverage.
- This tool analyses the code by instrumenting it behind that is private.
- NCoverExplorer tool is available to browse the source code with coverage analysis.
- Reports are presented in metrics of HTML format.
5. Vector Software
VectorCAST allows you to implement consistent processes for managing test activities and reporting key quality metrics. This software testing tool offers a cost-effective approach to unit testing, regression management, and code coverage analysis.
Features:
- Easy Test Collaboration
- System Test Automation
- Quality trend & change Impact Analysis
- Allows parallel Testing
- Web-based Quality Dashboard
6. Bullseye Coverage
- BullseyeCoverage is a code coverage software for C++ code coverage and C that tells you how much of your source code was tested. This tool allows you to perform unit testing, integration testing, and final release.
Features:
- Provides better c++ code coverage measurement
- It is one of the best test coverage tools which helps you to create more reliable code and save time
- Allows you to Include or exclude any portion of the project code
- Merge results from distributed testing
- This code coverage analyzer can be used for C++ and C.
- It has the feature to export the result to HTML, XML and GUI format.
- It comes with additional features like merging, code excluding, visualize etc.
- The biggest disappointment is that the merging of results can only be done at the functional level. It is not allowed in the statement or condition level.