Skip to content


Subversion checkout URL

You can clone with
Download ZIP
tree: 410aba5427
Fetching contributors…

Cannot retrieve contributors at this time

141 lines (116 sloc) 5.235 kB
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "">
<html xmlns="" lang="en">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<link rel="stylesheet" href="book.css" charset="ISO-8859-1" type="text/css" />
<title>Java Code Coverage for Eclipse</title>
<a href="images/screen.png"><img src="images/smallscreen.gif" alt="Screenshot" width="450" height="353" style="float:right; margin-left:10px; margin-bottom:10px; border:0px solid black" /></a>
EclEmma is a free Java code coverage tool for
<a class="extern" href="">Eclipse</a>, available under the
<a class="extern" href="license.html">Eclipse Public License</a>. It brings
code coverage analysis directly into the Eclipse workbench:
<li><b>Fast develop/test cycle:</b> Launches from within the workbench like
JUnit test runs can directly be analyzed for code coverage.</li>
<li><b>Rich coverage analysis:</b> Coverage results are immediately summarized
and highlighted in the Java source code editors.</li>
<li><b>Non-invasive:</b> EclEmma does not require modifying your projects or
performing any other setup.</li>
Since version 2.0 EclEmma is based on the
<a href="">JaCoCo</a> code
coverage library. The Eclipse integration has its focus on supporting the
individual developer in an highly interactive way. For automated builds please
refer to <a href="">JaCoCo
documentation</a> for
<a href="">integrations with other tools</a>.
<a href="installation1x.html">Originally</a> EclEmma was inspired by and
technically based on the great
<a class="extern" href="">EMMA</a> library
developed by Vlad Roubtsov.
The <a href="installation.html">update site</a> for EclEmma is
<b></b>. EclEmma is also available via the Eclipse
<a class="extern" href="">Marketplace Client</a>,
simply search for "EclEmma".
EclEmma adds a so called <i>launch mode</i> to the Eclipse workbench. It is
called <i>Coverage</i> mode and works exactly like the existing <i>Run</i> and
<i>Debug</i> modes. The <i>Coverage</i> launch mode can be activated from the
<i>Run</i> menu or the workbench's toolbar:
<img src="userdoc/images/launchtoolbar.gif" alt="Launching Toolbar" width="112" height="27" />
Simply <a href="userdoc/launching.html">launch</a> your applications or unit
tests in the <i>Coverage</i> mode to collect coverage information. Currently
the following launch types are supported:
<li>Local Java application</li>
<li>Eclipse/RCP application</li>
<li>Equinox OSGi framework</li>
<li>JUnit test</li>
<li>TestNG test</li>
<li>JUnit plug-in test</li>
<li>JUnit RAP test</li>
<li>SWTBot test</li>
<li>Scala application</li>
On request or after your target application has terminated code coverage
information is automatically available in the Eclipse workbench:
<li><b>Coverage overview:</b> The
<a href="userdoc/coverageview.html"><i>Coverage</i> view</a> lists coverage
summaries for your Java projects, allowing drill-down to method level.</li>
<li><b>Source highlighting:</b> The result of a coverage session is also
directly visible in the Java source editors. A customizable
<a href="userdoc/annotations.html">color code</a> highlights fully, partly and
not covered lines. This works for your own source code as well as for source
attached to instrumented external libraries.</li>
Additional features support analysis for your test coverage:
<li><b>Different counters:</b> Select whether instructions, branches, lines,
methods, types or cyclomatic complexity should be summarized.</li>
<li><b>Multiple coverage sessions:</b> Switching between coverage data from
multiple <a href="userdoc/sessions.html">sessions</a> is possible.</li>
<li><b>Merge Sessions:</b> If multiple different test runs should be considered
for analysis coverage sessions can easily be merged.</li>
While EclEmma is primarily designed for test runs and analysis within the
Eclipse workbench, it provides some import/export features.
<li><b>Execution data import:</b> A wizard allows to
<a href="userdoc/importexport.html">import</a> JaCoCo <code>*.exec</code>
execution data files from external launches.</li>
<li><b>Coverage report export:</b> Coverage data can be
<a href="userdoc/importexport.html">exported</a> in HTML, XML or CSV format or
as JaCoCo execution data files (<code>*.exec</code>).</li>
Jump to Line
Something went wrong with that request. Please try again.