<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
				<meta name="keywords" content="SMILA/Documentation/HowTo/How to integrate test bundle into build process,SMILA/Development Guidelines/Introduction to make.xml,SMILA/Documentation/HowTo/Create a test bundle (plug-in),SMILA/Development Guidelines/Build and Test Eclipse Product" />
		<link rel="shortcut icon" href="http://wiki.eclipse.org/SMILA/Development_Guidelines/favicon.ico" />
		<link rel="search" type="application/opensearchdescription+xml" href="http://wiki.eclipse.org/opensearch_desc.php" title="Eclipsepedia (English)" />
<link rel="alternate" type="application/rss+xml" title="Eclipsepedia RSS Feed" href="http://wiki.eclipse.org/index.php?title=Special:Recentchanges&amp;feed=rss" />
<link rel="alternate" type="application/atom+xml" title="Eclipsepedia Atom Feed" href="http://wiki.eclipse.org/index.php?title=Special:Recentchanges&amp;feed=atom" />
	
		
		<title>SMILA/Documentation/HowTo/How to integrate test bundle into build process - Eclipsepedia</title>

		<style type="text/css" media="screen,projection">/*<![CDATA[*/ @import "http://wiki.eclipse.org/skins/eclipsenova/novaWide.css?116"; /*]]>*/</style>
		<link rel="stylesheet" type="text/css" media="print" href="http://wiki.eclipse.org/skins/eclipsenova/eclipsenovaPrint.css?116" />
		<link rel="stylesheet" type="text/css" media="handheld" href="http://wiki.eclipse.org/skins/eclipsenova/handheld.css?116" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/header.css" media="screen" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/tabs.css" media="screen" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/visual.css" media="screen" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/layout.css" media="screen" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/footer.css" media="screen" />
	        <!--[if IE]><link rel="stylesheet" type="text/css" href="/skins/eclipsenova/IEpngfix.css" media="screen" /><![endif]-->
		<!--[if lt IE 5.5000]><style type="text/css">@import "/skins/eclipsenova/IE50Fixes.css?116";</style> <![endif]-->
		<!--[if IE 5.5000]><style type="text/css">@import "/skins/eclipsenova/IE55Fixes.css?116";</style><![endif]-->
		<!--[if IE 6]><style type="text/css">@import "/skins/eclipsenova/IE60Fixes.css?116";</style><![endif]-->
		<!--[if IE 7]><style type="text/css">@import "/skins/eclipsenova/IE70Fixes.css?116";</style><![endif]-->
		<!--[if lt IE 7]><script type="text/javascript" src="/skins/common/IEFixes.js?116"></script>
		<meta http-equiv="imagetoolbar" content="no" /><![endif]-->
		<script type= "text/javascript">/*<![CDATA[*/
var skin = "eclipsenova";
var stylepath = "/skins";
var wgArticlePath = "/$1";
var wgScriptPath = "";
var wgScript = "/index.php";
var wgServer = "http://wiki.eclipse.org";
var wgCanonicalNamespace = "";
var wgCanonicalSpecialPageName = false;
var wgNamespaceNumber = 0;
var wgPageName = "SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process";
var wgTitle = "SMILA/Documentation/HowTo/How to integrate test bundle into build process";
var wgAction = "view";
var wgRestrictionEdit = [];
var wgRestrictionMove = [];
var wgArticleId = "15398";
var wgIsArticle = true;
var wgUserName = null;
var wgUserGroups = null;
var wgUserLanguage = "en";
var wgContentLanguage = "en";
var wgBreakFrames = false;
var wgCurRevisionId = "286580";
var wgVersion = "1.12.0";
var wgEnableAPI = true;
var wgEnableWriteAPI = false;
/*]]>*/</script>
                
		<script type="text/javascript" src="http://wiki.eclipse.org/skins/common/wikibits.js?116"><!-- wikibits js --></script>

<!-- Performance mods similar to those for bug 166401 -->
		<script type="text/javascript" src="http://wiki.eclipse.org/index.php?title=-&amp;action=raw&amp;gen=js&amp;useskin=eclipsenova"><!-- site js --></script>

		<!-- Head Scripts -->
				<script type="text/javascript" src="http://wiki.eclipse.org/skins/common/ajax.js?116"></script>
<style type="text/css">/*<![CDATA[*/
.source-xml {line-height: normal; font-size: medium;}
.source-xml li {line-height: normal;}
/**
 * GeSHi Dynamically Generated Stylesheet
 * --------------------------------------
 * Dynamically generated stylesheet for xml
 * CSS class: source-xml, CSS id: 
 * GeSHi (C) 2004 - 2007 Nigel McNie (http://qbnz.com/highlighter)
 */
.source-xml .de1, .source-xml .de2 {font-family: 'Courier New', Courier, monospace; font-weight: normal;}
.source-xml  {}
.source-xml .head {}
.source-xml .foot {}
.source-xml .imp {font-weight: bold; color: red;}
.source-xml .ln-xtra {color: #cc0; background-color: #ffc;}
.source-xml li {font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;}
.source-xml li.li2 {font-weight: bold;}
.source-xml .coMULTI {color: #808080; font-style: italic;}
.source-xml .es0 {color: #000099; font-weight: bold;}
.source-xml .br0 {color: #66cc66;}
.source-xml .st0 {color: #ff0000;}
.source-xml .nu0 {color: #cc66cc;}
.source-xml .sc0 {color: #00bbdd;}
.source-xml .sc1 {color: #ddbb00;}
.source-xml .sc2 {color: #339933;}
.source-xml .sc3 {color: #009900;}
.source-xml .re0 {color: #000066;}
.source-xml .re1 {font-weight: bold; color: black;}
.source-xml .re2 {font-weight: bold; color: black;}

/*]]>*/
</style>
<style type="text/css">/*<![CDATA[*/
@import "http://wiki.eclipse.org/index.php?title=MediaWiki:Geshi.css&usemsgcache=yes&action=raw&ctype=text/css&smaxage=18000";
/*]]>*/
</style><style type="text/css">/*<![CDATA[*/
.source-text {line-height: normal; font-size: medium;}
.source-text li {line-height: normal;}
/**
 * GeSHi Dynamically Generated Stylesheet
 * --------------------------------------
 * Dynamically generated stylesheet for text
 * CSS class: source-text, CSS id: 
 * GeSHi (C) 2004 - 2007 Nigel McNie (http://qbnz.com/highlighter)
 */
.source-text .de1, .source-text .de2 {font-family: 'Courier New', Courier, monospace; font-weight: normal;}
.source-text  {}
.source-text .head {}
.source-text .foot {}
.source-text .imp {font-weight: bold; color: red;}
.source-text .ln-xtra {color: #cc0; background-color: #ffc;}
.source-text li {font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;}
.source-text li.li2 {font-weight: bold;}

/*]]>*/
</style>
<style type="text/css">/*<![CDATA[*/
@import "http://wiki.eclipse.org/index.php?title=MediaWiki:Geshi.css&usemsgcache=yes&action=raw&ctype=text/css&smaxage=18000";
/*]]>*/
</style><link rel="stylesheet" type="text/css" href="How_to_integrate_test_bundle_into_build_process.html" />	</head>
<body  class="mediawiki ns-0 ltr page-SMILA_Documentation_HowTo_How_to_integrate_test_bundle_into_build_process">
	<div id="globalWrapper">


		<div id="column-one">
<!-- Eclipse Additions for the Top Nav start here M. Ward-->

		      <div id="header">
               <div id="header-graphic">
                 <img src="http://wiki.eclipse.org/skins/eclipsenova/eclipse.png" alt="Eclipse Wiki">
               </div>
<!-- Pulled 101409 Mward	   -->
            
            <div class="portlet" id="p-personal">
              <div class="pBody">
              <ul>
                <li id="pt-login"><a href="http://wiki.eclipse.org/index.php?title=Special:Userlogin&amp;returnto=SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process">Log in</a></li>
                      </ul>
              </div>
            </div>

            <div id="header-icons">
	      <div id="sites">
              <ul id="sitesUL">
                <li><a href="http://www.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/eclipseIcon.png" width="28" height="28" alt="Eclipse Foundation" title="Eclipse Foundation" /><div>Eclipse Foundation</div></a></li>
                <li><a href="http://marketplace.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/marketplace.png" width="28" height="28" alt="Eclipse Marketplace" title="Eclipse Marketplace" /><div>Eclipse Marketplace</div></a></li>
                <li><a href="https://bugs.eclipse.org/bugs"><img src="http://dev.eclipse.org/custom_icons/system-search-bw.png" width="28" height="28" alt="Bugzilla" title="Bugzilla" /><div>Bugzilla</div></a></li>
                <li><a href="http://live.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/audio-input-microphone-bw.png" width="28" height="28" alt="Live" title="Live" /><div>Eclipse Live</div></a></li>
                <li><a href="http://planeteclipse.org"><img src="http://dev.eclipse.org/large_icons/devices/audio-card.png" width="28" height="28" alt="PlanetEclipse" title="Planet" /><div>Planet Eclipse</div></a></li>
                <li><a href="http://portal.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/preferences-system-network-proxy-bw.png" width="28" height="28" alt="Portal" title="Portal" /><div>My Foundation Portal</div></a></li>
              </ul>
              </div>
            </div>
        </div> 
<!-- NEW HEADER STUFF HERE -->
       <div id="header-menu">
         <div id="header-nav">
               <ul> 		 <li><a class="first_one" href="http://wiki.eclipse.org/" target="_self">Home</a></li>                  <li><a  href="http://www.eclipse.org/downloads/" target="_self">Downloads</a></li> 
                 <li><a  href="http://www.eclipse.org/users/" target="_self">Users</a></li> 
                 <li><a  href="http://www.eclipse.org/membership/" target="_self">Members</a></li> 
                 <li><a  href="http://wiki.eclipse.org/index.php/Development_Resources" target="_self">Committers</a></li> 
                 <li><a  href="http://www.eclipse.org/resources/" target="_self">Resources</a></li> 
                 <li><a  href="http://www.eclipse.org/projects/" target="_self">Projects</a></li> 
                 <li><a  href="http://www.eclipse.org/org/" target="_self">About Us</a></li> 
                </ul>
         </div>
         <div id="header-utils">
<!-- moved the search window here -->
                           <form action="http://wiki.eclipse.org/Special:Search" >
                  <input class="input" name="search" type="text" accesskey="f" value="" />
                    <input type='submit' onclick="this.submit();" name="go" id="searchGoButton" class="button" title="Go to a page with this exact name if one exists" value="Go" />&nbsp;
                    <input type='submit' onclick="this.submit();" name="fulltext" class="button" id="mw-searchButton" title="Search Eclipsepedia for this text"  value="Search" />
                </form>
		 </div>
      </div>


<!-- Eclipse Additions for the Header stop here -->
<!-- Additions and mods for leftside nav Start here -->

<!--Started nav  rip here-->
<!-- these are the nav controls main page, changes etc -->
    <div id="novaContent" class="faux">
            <div id="leftcol">
          <ul id="leftnav">
<!-- these are the page controls, edit history etc -->
            	  <li class="separator"><a class="separator">Navigation &#160;&#160;</li>
                                <li id="n-mainpage"><a href="http://wiki.eclipse.org/Main_Page">Main Page</a></li>
	                                <li id="n-portal"><a href="http://wiki.eclipse.org/Eclipsepedia:Community_Portal">Community portal</a></li>
	                                <li id="n-currentevents"><a href="http://wiki.eclipse.org/Eclipsepedia:Current_events">Current events</a></li>
	                                <li id="n-recentchanges"><a href="http://wiki.eclipse.org/Special:Recentchanges">Recent changes</a></li>
	                                <li id="n-randompage"><a href="http://wiki.eclipse.org/Special:Random">Random page</a></li>
	                                <li id="n-help"><a href="http://wiki.eclipse.org/Help:Contents">Help</a></li>
		  <li class="separator"><a class="separator">Toolbox &#160;&#160;</a></li>

				<li id="t-whatlinkshere"><a href="http://wiki.eclipse.org/Special:Whatlinkshere/SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process">What links here</a></li>
				<li id="t-recentchangeslinked"><a href="http://wiki.eclipse.org/Special:Recentchangeslinked/SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process">Related changes</a></li>
                <!-- This is the toolbox section -->
<li id="t-upload"><a href="http://wiki.eclipse.org/Special:Upload">Upload file</a></li>
<li id="t-specialpages"><a href="http://wiki.eclipse.org/Special:Specialpages">Special pages</a></li>
				<li id="t-print"><a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process&amp;printable=yes">Printable version</a></li>				<li id="t-permalink"><a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process&amp;oldid=286580">Permanent link</a></li>	  </ul>
        </div>


<!-- Additions and mods for leftside nav End here -->


  <div id="column-content">
    <div id="content">
      <a name="top" id="top"></a>

              <div id="tabs">
         <ul class="primary">
                                         <li class="active"><a href="../Documentation/HowTo/How_to_integrate_test_bundle_into_build_process.html"><span class="tab">Page</span></a></li>
                                                         <li><a href="http://wiki.eclipse.org/index.php?title=Talk:SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process&amp;action=edit"><span class="tab">Discussion</span></a></li>
                                         <li><a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process&amp;action=edit"><span class="tab">View source</span></a></li>
                                         <li><a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process&amp;action=history"><span class="tab">History</span></a></li>
                                         <li><a href="http://wiki.eclipse.org/index.php?title=Special:Userlogin&amp;returnto=SMILA/Documentation/HowTo/How&#32;to&#32;integrate&#32;test&#32;bundle&#32;into&#32;build&#32;process"><span class="tab">Edit</span></a></li>
                  </ul>
        </div>


          <script type="text/javascript"> if (window.isMSIE55) fixalpha(); </script>
            <h1 class="firstHeading">SMILA/Documentation/HowTo/How to integrate test bundle into build process</h1>
      <div id="bodyContent">
        <h3 id="siteSub">From Eclipsepedia</h3>
        <div id="contentSub"><span class="subpages">&lt; <a href="../../SMILA.html" title="SMILA">SMILA</a> | <a href="../Documentation.1.html" title="SMILA/Documentation">Documentation</a> | <a href="../Documentation/HowTo.html" title="SMILA/Documentation/HowTo">HowTo</a></span>(Redirected from <a href="http://wiki.eclipse.org/index.php?title=SMILA/Development_Guidelines/How_to_integrate_test_bundle_into_build_process&amp;redirect=no" title="SMILA/Development Guidelines/How to integrate test bundle into build process">SMILA/Development Guidelines/How to integrate test bundle into build process</a>)</div>
                              <div id="jump-to-nav">Jump to: <a href="How_to_integrate_test_bundle_into_build_process.html#column-one">navigation</a>, <a href="How_to_integrate_test_bundle_into_build_process.html#searchInput">search</a></div>          <!-- start content -->
          <p>This page describes how to integrate your <a href="../Documentation/HowTo/Create_a_test_bundle_(plug-in).html" title="SMILA/Documentation/HowTo/Create a test bundle (plug-in)">own test bundle (plug-in)</a> into the build process (Bamboo):
</p>
<table id="toc" class="toc" summary="Contents"><tr><td><div id="toctitle"><h2>Contents</h2></div>
<ul>
<li class="toclevel-1"><a href="How_to_integrate_test_bundle_into_build_process.html#Define_Junit_version_range"><span class="tocnumber">1</span> <span class="toctext">Define Junit version range</span></a></li>
<li class="toclevel-1"><a href="How_to_integrate_test_bundle_into_build_process.html#Create_test.xml_in_test_bundle"><span class="tocnumber">2</span> <span class="toctext">Create test.xml in test bundle</span></a></li>
<li class="toclevel-1"><a href="How_to_integrate_test_bundle_into_build_process.html#Include_test.xml_in_build.properties"><span class="tocnumber">3</span> <span class="toctext">Include test.xml in build.properties</span></a></li>
<li class="toclevel-1"><a href="How_to_integrate_test_bundle_into_build_process.html#Include_test_plug-in_into_org.eclipse.smila.test.feature"><span class="tocnumber">4</span> <span class="toctext">Include test plug-in into org.eclipse.smila.test.feature</span></a></li>
</ul>
</td></tr></table><script type="text/javascript"> if (window.showTocToggle) { var tocShowText = "show"; var tocHideText = "hide"; showTocToggle(); } </script>
<a name="Define_Junit_version_range"></a><h3> <span class="mw-headline"> Define Junit version range </span></h3>
<p>Currently, it is necessary to import <tt>junit.framework</tt> with an explicit version range:
</p>
<ol><li> Open the <tt>MANIFEST.MF</tt> file of your test bundle using the <i>Plug-in Manifest Editor</i>.
</li><li> Switch to the <i>Dependencies</i> tab and add the package <tt>junit.framework</tt> to the <i>Imported Packages</i> section.
</li><li> Make sure to set the version range of this package as follows:
</li></ol>
<div style="margin-left: 2.5em">
<table class="wikitable" border="1">

<tr>
<td> Minimum version
</td><td> 3.8.0
</td><td> Inclusive
</td></tr>
<tr>
<td> Maximun version
</td><td> 4.0.0
</td><td> Exlusive
</td></tr></table>
</div>
<a name="Create_test.xml_in_test_bundle"></a><h3> <span class="mw-headline"> Create test.xml in test bundle </span></h3>
<p>The following figure shows the typical folder structure of a test bundle in the <i>Package Explorer</i>.
</p><p><a href="http://wiki.eclipse.org/Image:TestPackageExplorer.png" class="image" title="Image:TestPackageExplorer.png"><img alt="Image:TestPackageExplorer.png" src="http://wiki.eclipse.org/images/5/5f/TestPackageExplorer.png" width="447" height="250" border="0" /></a>
</p><p>Every test plug-in you want to run needs an Ant file called <tt>test.xml</tt>. Because each test run starts up a new Eclipse instance, it is convenient to create a plug-in bundling all your tests into a single <tt>AllTests</tt> suite. Then, there is only one test run and there must only be one <tt>test.xml</tt> file maintained.
</p>
<ol><li>Provide an <tt>AllTests</tt> suite that bundles all your tests.
</li><li>Download the template file for <tt>test.xml</tt> from <a href="http://wiki.eclipse.org/Image:Test-bundle-template.zip" title="Image:Test-bundle-template.zip">Image:Test-bundle-template.zip</a> (see below).
</li><li>Add the file to your test bundle.
</li><li>Adapt the value of the property <tt>plugin-name</tt> to meet your bundle name: 
</li></ol>
<div style="margin-left:1.5em">
<div dir="ltr" style="text-align: left;"><pre class="source-xml">...
  <span class="sc3"><span class="coMULTI">&lt;!-- sets the properties plugin-name, and library-file --&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;plugin-name&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;&lt;your bundle&gt;</span>&quot;/&gt;
  <span class="sc3">&lt;property name=&quot;</span>library-file<span class="st0">&quot; value=&quot;</span>$<span class="br0">&#123;</span>eclipse-home<span class="br0">&#125;</span>/plugins/org.eclipse.test/library.xml<span class="st0">&quot;/&gt;</span>
  ...</span></pre></div>
</div>
<p>The code snippet below shows the template of the <tt>test.xml</tt> file. The entry point is the "run" target. Its prerequisites are "init", "suite", and "cleanup". The "suite" target calls "core-test" in <tt>library.xml</tt> with the properties necessary to start up the test host and run <tt>AllTests</tt>:
</p>
<div dir="ltr" style="text-align: left;"><pre class="source-xml"><span class="sc3"><span class="re1">&lt;?xml</span> <span class="re0">version</span>=<span class="st0">&quot;1.0&quot;</span><span class="re2">?&gt;</span></span>
<span class="sc3"><span class="re1">&lt;project</span> <span class="re0">name</span>=<span class="st0">&quot;testsuite&quot;</span> <span class="re0">default</span>=<span class="st0">&quot;run&quot;</span> <span class="re0">basedir</span>=<span class="st0">&quot;.&quot;</span><span class="re2">&gt;</span></span>
  <span class="sc3"><span class="coMULTI">&lt;!-- The property ${eclipse-home} should be passed into this script --&gt;</span></span>
  <span class="sc3"><span class="coMULTI">&lt;!-- Set a meaningful default value for when it is not. --&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;eclipse-home&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;${basedir}/../..&quot;</span><span class="re2">/&gt;</span></span>
&nbsp;
  <span class="sc3"><span class="coMULTI">&lt;!-- sets the properties plugin-name, and library-file --&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;plugin-name&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;org.eclipse.smila.sample.bundle.test&quot;</span><span class="re2">/&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;library-file&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;${eclipse-home}/plugins/org.eclipse.test/library.xml&quot;</span><span class="re2">/&gt;</span></span>
&nbsp;
  <span class="sc3"><span class="coMULTI">&lt;!-- This target holds all initialization code that needs to be done for --&gt;</span></span>
  <span class="sc3"><span class="coMULTI">&lt;!-- all tests that are to be run. Initialization for individual tests --&gt;</span></span>
  <span class="sc3"><span class="coMULTI">&lt;!-- should be done within the body of the suite target. --&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;target</span> <span class="re0">name</span>=<span class="st0">&quot;init&quot;</span><span class="re2">&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;tstamp</span><span class="re2">/&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;delete<span class="re2">&gt;</span></span></span>
      <span class="sc3"><span class="re1">&lt;fileset</span> <span class="re0">dir</span>=<span class="st0">&quot;${eclipse-home}&quot;</span> <span class="re0">includes</span>=<span class="st0">&quot;${plugin-name}*.xml&quot;</span><span class="re2">/&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;/delete<span class="re2">&gt;</span></span></span>
  <span class="sc3"><span class="re1">&lt;/target<span class="re2">&gt;</span></span></span>
&nbsp;
  <span class="sc3"><span class="coMULTI">&lt;!-- This target defines the tests that need to be run. --&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;target</span> <span class="re0">name</span>=<span class="st0">&quot;suite&quot;</span><span class="re2">&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;eit-folder&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;${eclipse-home}/eit_folder&quot;</span><span class="re2">/&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;delete</span> <span class="re0">dir</span>=<span class="st0">&quot;${eit-folder}&quot;</span> <span class="re0">quiet</span>=<span class="st0">&quot;true&quot;</span><span class="re2">/&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;ant</span> <span class="re0">target</span>=<span class="st0">&quot;core-test&quot;</span> <span class="re0">antfile</span>=<span class="st0">&quot;${library-file}&quot;</span> <span class="re0">dir</span>=<span class="st0">&quot;${eclipse-home}&quot;</span><span class="re2">&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;data-dir&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;${eit-folder}&quot;</span><span class="re2">/&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;plugin-name&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;${plugin-name}&quot;</span><span class="re2">/&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;classname&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;${plugin-name}.AllTests&quot;</span><span class="re2">/&gt;</span></span>
&nbsp;
      <span class="sc3"><span class="coMULTI">&lt;!-- Activates logging (if necessary activate it--&gt;</span></span>      
      <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;vmargs&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog -Dorg.apache.commons.logging.simplelog.defaultlog=debug&quot;</span><span class="re2">/&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;/ant<span class="re2">&gt;</span></span></span>
  <span class="sc3"><span class="re1">&lt;/target<span class="re2">&gt;</span></span></span>
&nbsp;
  <span class="sc3"><span class="coMULTI">&lt;!-- This target holds code to cleanup the testing environment after --&gt;</span></span>
  <span class="sc3"><span class="coMULTI">&lt;!-- after all of the tests have been run. You can use this target to --&gt;</span></span>
  <span class="sc3"><span class="coMULTI">&lt;!-- delete temporary files that have been created. --&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;target</span> <span class="re0">name</span>=<span class="st0">&quot;cleanup&quot;</span><span class="re2">&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;/target<span class="re2">&gt;</span></span></span>
&nbsp;
  <span class="sc3"><span class="coMULTI">&lt;!-- This target runs the test suite. Any actions that need to happen --&gt;</span></span>
  <span class="sc3"><span class="coMULTI">&lt;!-- after all the tests have been run should go here. --&gt;</span></span>
  <span class="sc3"><span class="re1">&lt;target</span> <span class="re0">name</span>=<span class="st0">&quot;run&quot;</span> <span class="re0">depends</span>=<span class="st0">&quot;init,suite,cleanup&quot;</span><span class="re2">&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;ant</span> <span class="re0">target</span>=<span class="st0">&quot;collect&quot;</span> <span class="re0">antfile</span>=<span class="st0">&quot;${library-file}&quot;</span> <span class="re0">dir</span>=<span class="st0">&quot;${eclipse-home}&quot;</span><span class="re2">&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;includes&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;${plugin-name}*.xml&quot;</span><span class="re2">/&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;output-file&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;${plugin-name}.xml&quot;</span><span class="re2">/&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;/ant<span class="re2">&gt;</span></span></span>
  <span class="sc3"><span class="re1">&lt;/target<span class="re2">&gt;</span></span></span>
<span class="sc3"><span class="re1">&lt;/project<span class="re2">&gt;</span></span></span></pre></div>
<a name="Include_test.xml_in_build.properties"></a><h3> <span class="mw-headline"> Include test.xml in build.properties </span></h3>
<p>Add the <tt>test.xml</tt> file to the <tt>build.properties</tt> of your test bundle:
</p>
<div dir="ltr" style="text-align: left;"><pre class="source-text">source.. = code/src/
output.. = code/bin/
bin.includes = META-INF/,\
               .,\
               test.xml</pre></div>
<table width="100%" style="background-color:#d8e4f1; padding-left:30px;">
<tr>
<td>
<p><b>Additional information</b>: You don't have to modify the build file (make.xml) to include a bundle in the build. The make.xml file includes all bundles (core and test), which are located under the local trunk folder (e.g. SMILA/core). If you don't want to include your new bundle into the build process, the bundle has to be explicitly excluded in the make.xml file. You also don´t have to modify the build file to include your test bundle to checkstyle, pmd and emma. The tests inside your test bundle will be automatically executed. If you don´t want to run a test, the test bundle has to be explicitly excluded in the make.xml. For further information see: <a href="Introduction_to_make.xml.html" title="SMILA/Development Guidelines/Introduction to make.xml">Introduction to make.xml</a>.
</p>
</td></tr></table>
<a name="Include_test_plug-in_into_org.eclipse.smila.test.feature"></a><h3> <span class="mw-headline"> Include test plug-in into org.eclipse.smila.test.feature </span></h3>
<ol><li> Open the file <tt>org.eclipse.smila.test.feature/feature.xml</tt>) using the <i>Feature Manifest Editor</i>.
</li><li> Switch to the <i>Plug-ins</i> tab and add your test bundle to the <i>Plug-ins and Fragments</i> section.
</li><li> Select the added plug-in and enable the option "Unpack the plug-in archive after the installation" in the <i>Plug-in Details</i> section. If you don't enable this option, the bundle's <tt>test.xml</tt> file won't be found and the build process will fail.
</li></ol>
<p>For further information see: <i><a href="http://wiki.eclipse.org/index.php?title=SMILA/Development_Guidelines/Build_and_Test_Eclipse_Product&amp;action=edit" class="new" title="SMILA/Development Guidelines/Build and Test Eclipse Product">Build and Test Eclipse Product</a></i>.
</p>
<!-- 
NewPP limit report
Preprocessor node count: 32/1000000
Post-expand include size: 0/2097152 bytes
Template argument size: 0/2097152 bytes
#ifexist count: 0/100
-->

<!-- Saved in parser cache with key wikidb:pcache:idhash:15398-0!1!0!!en!2!edit=0 and timestamp 20130416060939 -->
<div class="printfooter">
Retrieved from "<a href="../Documentation/HowTo/How_to_integrate_test_bundle_into_build_process.html">http://wiki.eclipse.org/SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process</a>"</div>
                    <!-- end content -->
          <div class="visualClear"></div>
        </div>
      </div>


    </div>


	<!-- Yoink of toolbox for phoenix moved up -->


  </div>
  </div>
              <div id="clearFooter"/>
            <div id="footer" >  
	      <ul id="footernav">
                <li class="first"><a href="http://www.eclipse.org/">Home</a></li>
               	<li><a href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
	        <li><a href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
		<li><a href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li>
                <li><a href="http://www.eclipse.org/org/foundation/contact.php">Contact</a></li>
               	<li><a href="http://wiki.eclipse.org/Eclipsepedia:About" title="Eclipsepedia:About">About Eclipsepedia</a></li>
	      </ul>
              <span id="copyright">Copyright &copy; 2013 The Eclipse Foundation. All Rights Reserved</span>
	      <p id="footercredit">This page was last modified 16:23, 25 January 2012 by <a href="http://wiki.eclipse.org/index.php?title=User:Nadine.auslaender.attensity.com&amp;action=edit" class="new" title="User:Nadine.auslaender.attensity.com"> </a>. Based on work by <a href="http://wiki.eclipse.org/index.php?title=User:Juergen.schumacher.attensity.com&amp;action=edit" class="new" title="User:Juergen.schumacher.attensity.com">Juergen Schumacher</a>, <a href="http://wiki.eclipse.org/User:Andreas.schank.attensity.com" title="User:Andreas.schank.attensity.com">A. Schank</a> and <a href="http://wiki.eclipse.org/index.php?title=User:Szhbankova.brox.de&amp;action=edit" class="new" title="User:Szhbankova.brox.de">Sofya Zhbankova</a> and <a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/HowTo/How_to_integrate_test_bundle_into_build_process&amp;action=credits" title="SMILA/Documentation/HowTo/How to integrate test bundle into build process">others</a>.</p>
	      <p id="footerviews">This page has been accessed 4,864 times.</p>
	    </div>

            <script type="text/javascript">
              var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
              document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
            </script>
            <script type="text/javascript">
              var pageTracker = _gat._getTracker("UA-910670-4");
              pageTracker._trackPageview();
            </script>
 
 	



		

<!-- 			<div class="visualClear"></div> -->
	
		<script type="text/javascript">if (window.runOnloadHook) runOnloadHook();</script>
</div>

<!-- Served in 0.055 secs. --></body></html>
