blob: b576859f55cb9fd2416d18e8a438056bf3f4822a [file] [log] [blame]
<html>
<head>
<title>Instructions</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font size="+2"> Automated Testing of Modeling Project Builds</font>
<p>last updated: November 9, 2005</p>
<p><font size="+1">Description</font></p>
<p>This document describes how to run the GMF JUnit test plugins from the command
line. This is the same mechanism used in the builds.</p>
<p>Click <a href="testframework.html">here</a> for a description of the testing
framework, and how it can be used outside of the setup described here.</p>
<p>If you simply wish to write and run JUnit tests interactively from an Eclipse
workbench, try one of the links below:</p>
<p><a href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/jdt-ui-home/plugins/org.eclipse.jdt.junit/index.html">JUnit
Support in Eclipse</a><br>
<a href="http://dev.eclipse.org:8080/help/content/help:/org.eclipse.jdt.doc.user/tasks/tasks-207.htm?resultof=%6a%75%6e%69%74%20&toc=%2Forg.eclipse.jdt.doc.user%2Ftoc.xml">Using
JUnit</a></p>
<p><font size="+1">Requirements</font></p>
<p>1. All test machines must have a java runtime environment (version 1.3.1) installed and added to the path environment variable (see
<a href="#vm">-vm</a> parameter below).<br>
2. <a href="http://www.info-zip.org/pub/infozip/UnZip.html">Info-ZIP UnZip</a>
version 5.41 or later installed and added to the path.<br>
3. The Automated Test feature from a
<a href="http://www.eclipse.org/modeling/mdt/downloads/"> MDT downloads</a>.
This contains the test framework plugins and the JUnit test plugins to run.<br>
4. The GMF zip file from the same build as the Automated Test feature. You can use the gmf-sdk zip file instead of the individual files.<br>
5. An Eclipse SDK zip file. The URL and build name of the required builds
are specified in the build.cfg file included in the Automated Test zip file.</p>
<p><font size="+1">Setup</font></p>
<p>1. Extract the gmf-*-automated-tests-&lt;buildId&gt;.zip. On Window, extract
this file close to the root of the drive to prevent some path names from exceeding
the 255 character limit. This will create a top-level directory &quot;<i>testing</i>&quot;.<br>
2. Place the Eclipse SDK zip file and the GMF runtime in the <i>testing</i> directory.
Do not unzip these files. (The test scripts will take care of this)<br>
</p>
<p><font size="+1">Running Tests</font></p>
<p>1. cd to the <i>testing</i> directory<br>
2. Run the following script:</p>
<p><b>runtests [-os &lt;operating system&gt;] [-ws &lt;windowing system&gt;] [-arch
&lt;architecture&gt;] [-noclean] [&lt;testTarget&gt;][-properties &lt;path&gt;][-vm
&lt;path to java executable&gt;]</b></p>
All parameters and targets are optional on windows systems. Just running &quot;runtests&quot;
will run <b>ALL</b> tests on Windows, installing a clean Eclipse and GMF SDK between
each test target. On *nix systems, the os, ws and arch parameters must be specified.
<br>
<br>
Test results are placed in the <i>testing</i>/<i>results</i> directory in xml and html format.<br>
<p><font size="+1"><a name="vm"></a>Parameters</font></p>
<table width="90%" border="1">
<tr>
<td>Parameter</td>
<td>Description</td>
</tr>
<tr>
<td>-os &lt;operating system&gt;</td>
<td>The OS the tests are being run on. One of: aix, hpux, linux, qnx, solaris,
win32. <b>Default win32</b></td>
</tr>
<tr>
<td>-ws &lt;windowing system&gt;</td>
<td>The windowing system the tests are being run on. One of: motif, gtk, photon,
win32. <b>Default win32</b></td>
</tr>
<tr>
<td>-arch &lt;architecture&gt;</td>
<td>The architecture the tests are being run on. One of: ppc, PA_RISC, x86,
sparc. <b>Default x86</b></td>
</tr>
<tr>
<td>-noclean</td>
<td>Run tests without installing an Eclipse and GEF SDK and tests between
test targets. Default is to re-install these between test targets.</td>
</tr>
<tr>
<td>-properties</td>
<td>Used to reference a properties file containing additional Ant properties
used in running tests.Can be used to pass additional vm arguments to the
Java virtual machine running the tests by adding the entry &quot;extraVMargs=&lt;the
args to pass to the vm&gt;&quot; to the specified properties file.</td>
</tr>
<tr>
<td>-vm</td>
<td>The full path to the java executable with which to run the tests. Use
this to specify a specific virtual machine with which to run the tests.
For example, &quot;-vm c:\sun131\jre\bin\java&quot;. Default set to &quot;java&quot;
(i.e. java executable on system path). </td>
</tr>
</table>
<p><font size="+1">Test Targets</font></p>
<p>Specifies which ant target to run in the main test.xml. Typically this corresponds
to a test project's tests. If you do not specify a test target then the <b>all</b>
test target is run.</p>
<table width="90%" border="1">
<tr>
<td>all</td>
<td>Runs all the targets below.</td>
</tr>
<tr>
<td>gmf</td>
<td>Runs the JUnit tests located in the test plug-ins</td>
</tr>
<tr>
<td>genHtml</td>
<td>Converts xml test results in the &quot;<i>testing</i>/<i>results</i>&quot; directory
to html.</td>
</tr>
</table>
<p>&nbsp;</p>
<p><font size="+1"><a name="appendixb"></a>Appendix A- Supported os, ws, and arch
value combinations</font></p>
<p>The following table contains the values that can be used with the -os, -ws,
and -arch switches.</p>
<table width="75%" border="1">
<tr>
<td>Operating System (os)</td>
<td>Windowing System (ws)</td>
<td>Architecture (arch)</td>
</tr>
<tr>
<td>aix</td>
<td>motif</td>
<td>ppc</td>
</tr>
<tr>
<td>hpux</td>
<td>motif</td>
<td>PA_RISC</td>
</tr>
<tr>
<td>linux</td>
<td>gtk</td>
<td>x86</td>
</tr>
<tr>
<td>linux</td>
<td>motif</td>
<td>x86</td>
</tr>
<tr>
<td height="24">qnx</td>
<td height="24">photon</td>
<td height="24">x86</td>
</tr>
<tr>
<td>solaris</td>
<td>motif</td>
<td>sparc</td>
</tr>
<tr>
<td>win32</td>
<td>win32</td>
<td>x86</td>
</tr>
</table>
</body>
</html>