*** Welcome to piglix ***

EMMA (code coverage tool)

JCov
Developer(s) Leonid Arbouzov, Alexander Petrov, Vladimir Generalov, Serguei Chukhontsev, Oleg Uliankin, Gregory Steuck, Pavel Ozhdikhin, Konstantin Bobrovsky, Robert Field, Alexander Kuzmin, Leonid Mesnik, Sergey Borodin, Andrey Titov, Dmitry Fazunenko, Alexey Fedorchenko
Stable release
3.0 / September 1, 2014; 3 years ago (2014-09-01)
Type Code coverage
License GPL v2 (with the Classpath Exception)
Website
JaCoCo
Developer(s) Marc Hoffmann, Brock Janiczak, Evgeny Mandrikov, Mirko Friedenhagen
Preview release
0.7.9 / February 5, 2017; 10 months ago (2017-02-05)
Type Code coverage
License EPL
Website jacoco.org/jacoco
Clover
Developer(s) Atlassian
Stable release
4.1.2 / October 11, 2016; 13 months ago (2016-10-11)
Type Code coverage
License Apache 2.0
Website atlassian.com
OpenClover
Developer(s) Marek Parfianowicz, Grzegorz Lewandowski
Stable release
4.2.1 / November 22, 2017; 24 days ago (2017-11-22)
Type Code coverage
License Apache License 2.0
Website openclover.org
Cobertura
Developer(s) Steven Christou
Stable release
2.1.1 / February 26, 2015; 2 years ago (2015-02-26)
Repository github.com/cobertura/cobertura
Type Code coverage
License GPL 2.0
Website cobertura.github.io/cobertura/
EMMA
Developer(s) Vlad Roubtsov
Stable release
2.1 / May 13, 2005; 12 years ago (2005-05-13)
Repository sourceforge.net/projects/emma/
Type Code coverage
License Common Public License 1.0
Website emma.sourceforge.net
Serenity
Developer(s) Michael Couck
Stable release
1.0 / December 8, 2013; 4 years ago (2013-12-08)
Type Code coverage
License Apache Software License version 2.0
Website
Testwell CTC++
Developer(s) Verifysoft Technology
Stable release
8.0. / June 30, 2016; 17 months ago (2016-06-30)
Type Code coverage
License Proprietary
Website verifysoft.com/en_ctcpp.html

Java code coverage tools are of two types: first, tools that add statements to the Java source code and require its recompilation. Second, tools that instrument the bytecode, either before or during execution. The goal is to find out which parts of the code are tested by registering the lines of code executed when running a test.

JCov is the tool which has been developed and used with Sun JDK (and later Oracle JDK) from the very beginning of Java: from the version 1.1. JCov is capable of measuring and reporting Java code coverage. JCov is distributed under the terms of the GNU Public License (version 2, with the Classpath Exception). JCov has become open-source as a part of OpenJDK code tools project in 2014.

JCov is capable of reporting the following types of code coverage:

JCov implements two different ways to save the collected data:

JCov works by instrumenting Java bytecode using two different approaches:

JCov has a few more distinctive features which include, but are not limited to:

JaCoCo is an open-source toolkit for measuring and reporting Java code coverage. JaCoCo is distributed under the terms of the Eclipse Public License. It was developed as a replacement for EMMA under the umbrella of the EclEmma plug-in for Eclipse.

JaCoCo offers instructions, line and branch coverage.

In contrast to Clover, which requires instrumenting the source code, JaCoCo can instrument Java bytecode using two different approaches:

And can be configured to store the collected data in a file, or send it via TCP. Files from multiple runs or code parts can be merged easily. Unlike Cobertura and Emma it fully supports Java 7, Java 8 and Java 9.

Clover is a Java code coverage analysis utility bought and further developed by Atlassian. In April 2017 Atlassian announced end-of-life of Clover and at the same time open-sourced it under Apache 2.0 license.


...
Wikipedia

...