Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
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" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<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>
</head>
<body>
<h1>Overview</h1>
<p>
<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>
</p>
<p>
EclEmma is a free Java code coverage tool for
<a class="extern" href="http://www.eclipse.org">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:
</p>
<ul>
<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>
</ul>
<p>
Since version 2.0 EclEmma is based on the
<a href="http://www.eclemma.org/jacoco">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="http://www.eclemma.org/jacoco/trunk/doc">JaCoCo
documentation</a> for
<a href="http://www.eclemma.org/jacoco/trunk/doc/integrations.html">integrations with other tools</a>.
</p>
<p>
<a href="installation1x.html">Originally</a> EclEmma was inspired by and
technically based on the great
<a class="extern" href="http://emma.sourceforge.net/">EMMA</a> library
developed by Vlad Roubtsov.
</p>
<p>
The <a href="installation.html">update site</a> for EclEmma is
<b>http://update.eclemma.org/</b>. EclEmma is also available via the Eclipse
<a class="extern" href="http://marketplace.eclipse.org/marketplace-client-intro">Marketplace Client</a>,
simply search for "EclEmma".
</p>
<h2>Features</h2>
<h3>Launching</h3>
<p>
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:
</p>
<p>
<img src="userdoc/images/launchtoolbar.gif" alt="Launching Toolbar" width="112" height="27" />
</p>
<p>
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:
</p>
<ul>
<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>
</ul>
<h3>Analysis</h3>
<p>
On request or after your target application has terminated code coverage
information is automatically available in the Eclipse workbench:
</p>
<ul>
<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>
</ul>
<p>
Additional features support analysis for your test coverage:
</p>
<ul>
<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>
</ul>
<h3>Import/Export</h3>
<p>
While EclEmma is primarily designed for test runs and analysis within the
Eclipse workbench, it provides some import/export features.
</p>
<ul>
<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>
</ul>
</body>
</html>
Jump to Line
Something went wrong with that request. Please try again.