diff options
author | wisberg <wisberg> | 2002-12-16 17:19:22 +0000 |
---|---|---|
committer | wisberg <wisberg> | 2002-12-16 17:19:22 +0000 |
commit | 3ce247199704eae6b2c92c6e38c69584e3250c52 (patch) | |
tree | cb60b8f3d3f12e666efeb96913a56d2216a28d44 /lib/junit | |
parent | c3300283ecc397d26ad9dfe31d1710ec45db2af0 (diff) | |
download | aspectj-3ce247199704eae6b2c92c6e38c69584e3250c52.tar.gz aspectj-3ce247199704eae6b2c92c6e38c69584e3250c52.zip |
initial version
Diffstat (limited to 'lib/junit')
-rw-r--r-- | lib/junit/README.html | 466 | ||||
-rw-r--r-- | lib/junit/junit-src.zip | bin | 0 -> 53547 bytes | |||
-rw-r--r-- | lib/junit/junit.jar | bin | 0 -> 117522 bytes | |||
-rw-r--r-- | lib/junit/src.jar | bin | 0 -> 53547 bytes |
4 files changed, 466 insertions, 0 deletions
diff --git a/lib/junit/README.html b/lib/junit/README.html new file mode 100644 index 000000000..7674273f6 --- /dev/null +++ b/lib/junit/README.html @@ -0,0 +1,466 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> + <meta name="GENERATOR" content="Mozilla/4.75 [en] (Windows NT 5.0; U) [Netscape]"> + <meta name="Author" content="Erich Gamma & Kent Beck"> + <title>JUnit 3.7</title> +</head> +<body> + +<h1> +<b><font color="#00CC00">J</font><font color="#FF0000">U</font><font color="#000000">nit +3.7 +</font><font color="#808080">@</font><font color="#000000"> </font></b><!--webbot bot="HTMLMarkup" startspan --><a href="http://sourceforge.net"><img SRC="sflogo.php" ALT="SourceForge Logo" BORDER=0 height=31 width=88></a><!--webbot +bot="HTMLMarkup" endspan --></h1> + +<hr WIDTH="100%"> +<br>05/18/2001 +<p>JUnit is a simple framework to write repeatable tests. It is an instance +of the xUnit architecture for unit testing frameworks. +<ul> +<li> +<a href="#Summary of">Summary of Changes</a></li> + +<li> +<a href="#Contents">Contents</a></li> + +<li> +<a href="#Installation">Installation</a></li> + +<li> +<a href="#Getting">Getting Started</a></li> + +<li> +<a href="#Documentation">Documentation</a></li> +</ul> + +<h2> +<a NAME="Summary of"></a>Summary of Changes between 3.6 and 3.7</h2> + +<h3> +GUI</h3> + +<ul> +<li> +Eliminated warning when re-running tests when class loading checkbox is +unchecked. There are legitimate reasons for doing this, so a warning didn't +make much sense, and it was too obtrusive.</li> + +<li> +Stopped reloading classes when running in VisualAge for Java.</li> + +<li> +Print total number of tests as well as number of tests run so far (Swing +only).</li> +</ul> + +<h3> +Framework</h3> + +<ul> +<li> +Introduced Assert.assertTrue(boolean) and assertTrue(String, boolean) deprecated +assert(boolean) and assert(String, boolean) in preparation for the assert +keyword in Java 1.4. We plan to support native assertions when they are +publicly available. You can either move to assertTrue() or wait for 1.4 +and delete parentheses as the syntax is e.g. "assert 2 == 3".</li> + +<li> +Added accessors for TestCase.fName and TestSuite.fName.</li> + +<li> +Added a no argument TestCase constructor to support serialization.</li> + +<li> +Improved warnings when constructing TestSuites.</li> +</ul> + +<h3> +Text Runner</h3> + +<ul> +<li> +Made doRun() public so clients can create a text runner with a specified +output stream and then run tests.</li> +</ul> + +<h3> +Fixed Bugs (SourceForge Bug Tracker Ids)</h3> + [420315] No trace when fail with message... +<br> [419375] reload warning lags +<br> [418849] Classloader warning too obtrusive +<br> [417978] constructor stack trace, please +<br> [415103] Reload checkbox should be ignored in VAJ +<br> [414954] error reporting when invoking suite() +<br> [407296] Make doRun() public +<br> [227578] rmi callbacks fail since TestCase has no +noArg constructor +<br> [422603] Decorated decorators bug +<h2> +Summary of Changes between 3.5 and 3.6</h2> + +<h3> +TestRunner</h3> + +<ul> +<li> +The UI test runners provide a check box to enable/disable the custom class +loader. The user is warned when running a second test with the non loading +class loader.</li> + +<li> +Renames to address file name length limitation on MacOS:</li> + +<ul> +<li> +LoadingClassPathTestCollector -> LoadingTestCollector</li> + +<li> +SimpleClassPathTestCollector -> SimpleTestCollector</li> +</ul> +</ul> + +<h3> +Framework</h3> + +<ul> +<li> +Added TestSuite.getName()</li> +</ul> + +<h3> +Builds</h3> + +<ul> +<li> +Updated the build script for Ant 1.3.</li> +</ul> + +<h3> +Fixed Bugs (SourceForge Bug Tracker Ids)</h3> + +<blockquote>[ #229753 ] assertEquals on NaN and Infinity does not work +correctly +<br>[ #229287 ] Class Name too long "SimpleClassPathTestCollector" +<br>[ #229609 ] Stack Filtering missing in textui.TesRunner +<br>[ #229870 ] Clicking on ... after tests failed gives NPE +<br>[ #229974 ] Incorrect icon shown for first element in Swing GUI +<br>[ #230581 ] swingui.TestTreeModel: results of decorated testcases... +<br>[ #230971 ] Make junit.extensions.TestDecorator.getTest() public +<br>[ #231569 ] DocBug: JUnit Test Infected: Programmers Love Writing Tests +<br>[ #232645 ] BaseTestRunner.getTest loses exception information +<br>[ #233094 ] TestSuite masks exceptions +<br>[ #410967 ] No icon provided for first test +<br>[ #230745 ] ClassPathTestCollector sometimes lists classes in duplicate</blockquote> + +<h3> +Documentation</h3> + +<ul> +<li> +Added documentation about the <a href="doc/JUnitProperties.html">properties</a> +supported by TestRunners.</li> + +<li> +Updated the FAQ</li> +</ul> + +<h2> +Summary of Changes between 3.4 and 3.5</h2> + +<h3> +Framework</h3> + +<ul> +<li> +Added TestSuite.addTestSuite(Class testClass)</li> + +<br>This method allows to create a TestSuite with a class containing test +cases directly. +<br>Instead of writing <b>suite.addTest(new TestSuite(AssertTest.class)) +</b>you +can now write <b>suite.addTestSuite(AssertTest.class)</b>; +<li> +Added assertEquals methods for all primitive types: float, boolean, byte, +char, int, short</li> + +<li> +The signature of TestListeners.addFailure(Test test, Throwable t)</li> + +<br>was changed to addFailure(Test test, AssertionFailedError t)</ul> + +<h3> +TestRunner</h3> + +<ul> +<li> +The Swing TestRunner provides an experimental feature to browse test classes. +There is an additional browse ("...") button besides the suite combo. It +shows a simple dialog to select a test class from a list. Different strategies +to locate Test classes are supported and you can plug-in your own strategy. +This allows to leverage functionality provided by an extension API of an +integrated development environment (IDE). To define a custom test collector +you 1) implement the <b>junit.runner.TestCollector </b>interface and 2) +add an entry to the <b>junit.properties</b> file with the key <b>TestCollectorClass</b> +and the name of your TestCollector implementation class as the key:</li> + +<br> TestCollectorClass=junit.swingui.LoadingClassPathTestCollector +<br>This class has to be installed on the class path. +<br>JUnit provides two different TestCollector implementations: +<ul> +<li> +simple (junit.runner.SimpleClassPathTestCollector) - considers all classes +on the class path on the file system that contain "Test" in their name. +Classes in JARs are not considered.</li> + +<li> +loading (junit.runner.LoadingClassPathTestCollector) - loads all classes +on the class path and tests whether the class is assignable from Test or +has a static <b>suite</b> method.</li> +</ul> +By default the simple the test collector is used. The loading collector +is more precise but much slower than the simple one. The loading collector +doesn't scale up when many classes are available on the class path. +<br><b><font color="#FF0000">Notice</font></b>: that both TestCollectors +assume that the class files reside are kept in the file system. This isn't +case in VA/Java and they will not work there. A custom TestCollector is +required for VA/Java. +<li> +The Swing TestRunner now provides an additional test result view that shows +all tests of the executed test suite as a tree. The view shows the success +status for each test. The view is shown as an additional tab in the TestRunner +window. In previous versions of JUnit this view was shown in a separate +window.</li> + +<li> +The failure panels in the Swing and AWT TestRunners filter the exception +stack trace so that only non-framework stack frames are shown.</li> + +<li> +There is support to plug-in a custom failure panel that provides additional +functionality like navigating from a failure to the source. To do so you +implement the <b>junit.runner.FailureDetailView</b> interface and register +the implementation class in the junit.properties file under the key <b>FailureViewClass</b>, +for example</li> + +<br> FailureViewClass=MyFailureViewClassName. +<li> +The Swing and AWT TestRunners now understand an additional command line +argument "-noloading". When this argument is set then the standard system +class loader is used to load classes. This is an alternative to setting +the <b>loading</b> property to false in the junit.properties file.</li> + +<li> +Swing TestRunner - the maximum test history length shown in the suite combo +can be defined in the junit.properties file with the key <b>maxhistory</b>.</li> + +<li> +BaseTestRunner.<b>getLoader</b>() is no longer a static method and can +now be overridden in subclasses.</li> + +<li> +BaseTestRunner removed dependency on JDK 1.2.</li> + +<li> +Swing TestRunner - fixed the problem that a suite name was sometimes duplicated +in the history combo.</li> + +<li> +Swing TestRunner - the Run button is now the default button.</li> + +<li> +Output string truncation can now be controlled by adding the <b>maxmessage</b> +key with the desired maximum length to the junit.properties file. Setting +maxmessage to -1 means no output truncation.</li> + +<li> +The Text TestRunner now shows the summary at the very end so that you don't +have to scroll back.</li> +</ul> + +<h3> +Tests</h3> + +<ul> +<li> +TextRunnerTest now only depends on a nonzero status to indicate abnormal +termination.</li> + +<li> +TextRunnerTest now also passes on JDK 1.1.*. It uses the -classpath command +line argument instead of -cp.</li> +</ul> + +<h3> +Documentation</h3> + +<ul> +<li> +Add an FAQ entry about what to do when the junit tests provided with the +distribution can't be found.</li> +</ul> + +<h2> +Older Change Notes</h2> + +<blockquote> +<li> +Changes between <a href="doc/changes34.html">2.1 and 3.4</a></li> + +<li> +Changes between <a href="doc/changes21.html">1.0 and 2.1</a></li> +</blockquote> + +<h2> +<a NAME="Contents"></a>Contents of the Release</h2> + +<table CELLSPACING=0 CELLPADDING=0 > +<tr> +<td><tt>README.html </tt></td> + +<td>this file</td> +</tr> + +<tr> +<td><tt>junit.jar</tt></td> + +<td>a jar file with the JUnit framework and tools </td> +</tr> + +<tr> +<td>src.jar</td> + +<td>a jar file with the source code of the junit framework</td> +</tr> + +<tr> +<td><tt>junit</tt></td> + +<td>the source code of the JUnit samples</td> +</tr> + +<tr> +<td><tt> samples</tt></td> + +<td>sample test cases</td> +</tr> + +<tr> +<td><tt> tests</tt></td> + +<td>test cases for JUnit itself</td> +</tr> + +<tr> +<td><tt>javadoc</tt></td> + +<td>javadoc generated documentation</td> +</tr> + +<tr> +<td><tt>doc</tt></td> + +<td>documentation and articles</td> +</tr> +</table> + +<h2> +<a NAME="Installation"></a>Installation</h2> +Below are the installation steps for installing JUnit: +<ol> +<li> +unzip the junit.zip file</li> + +<li> +add<i> </i><b>junit.jar</b> to the CLASSPATH. For example: <tt>set classpath=%classpath%;INSTALL_DIR\junit3\junit.jar</tt></li> + +<li> +test the installation by using either the batch or the graphical TestRunner +tool to run the tests that come with this release. All the tests should +pass OK.</li> + +<br><b><font color="#FF0000">Notice</font></b>: that the tests are not +contained in the junit.jar but in the installation directory directly. +Therefore make sure that the installation directory is on the class path +<ul> +<li> +for the batch TestRunner type:</li> + +<br><tt> java junit.textui.TestRunner junit.samples.AllTests</tt> +<li> +for the graphical TestRunner type:</li> + +<br><tt> java junit.awtui.TestRunner junit.samples.AllTests</tt> +<li> +for the Swing based graphical TestRunner type:</li> + +<br><tt> java junit.swingui.TestRunner junit.samples.AllTests</tt></ul> +</ol> +<b><font color="#FF0000">Important</font></b>: don't install the junit.jar +into the extension directory of your JDK installation. If you do so the +test class on the files system will not be found. +<h2> +<a NAME="Getting"></a>Getting Started</h2> +To get started with unit testing and JUnit read the Java Report article: +<a href="doc/testinfected/testing.htm">Test +Infected - Programmers Love Writing Tests</a>. +<br>This article demonstrates the development process with JUnit in the +context of multiple currency arithmetic. The corresponding source code +is in junit\samples\money. +<p>You find additional samples in the junit.samples package: +<ul> +<li> +SimpleTest.java - some simple test cases</li> + +<li> +VectorTest.java - test cases for java.util.Vector</li> +</ul> + +<h2> +<a NAME="Documentation"></a>Documentation</h2> + +<blockquote><a href="doc/cookbook/cookbook.htm">JUnit Cookbook</a> +<br> A cookbook for implementing tests with JUnit. +<br><a href="doc/testinfected/testing.htm">Test Infected - Programmers +Love Writing Tests</a> +<br> An article demonstrating the development process +with JUnit. +<br><a href="doc/cookstour/cookstour.htm">JUnit - A cooks tour</a> +<br><a href="javadoc/index.html">Javadoc</a> +<br> API documentation generated with javadoc. +<br><a href="doc/faq/faq.htm">Frequently asked questions</a> +<br> Some frequently asked questions about using JUnit. +<br><a href="doc/JUnitProperties.html">TestRunner Preference settings</a> +<br> Describes the preferences settings that can be configured +for the JUnit TestRunners.</blockquote> + +<h2> +<a NAME="Extending"></a>Extending JUnit</h2> +Examples of possible JUnit extensions can be found in the <tt>junit.extensions</tt> +package: +<ul> +<li> +<a href="javadoc/junit/extensions/TestDecorator.html">TestDecorator</a> +- A decorator for Test. You can use it as the base class for implementing +decorators to extend test cases.</li> + +<li> +<a href="javadoc/junit/extensions/ActiveTestSuite.html">ActiveTestSuite</a> +- A TestSuite which runs each test in a separate thread and waits until +they are all terminated.</li> + +<li> +<a href="javadoc/junit/extensions/TestSetup.html">TestSetup</a> - A Decorator +to set up and tear down additional fixture state. Subclass TestSetup and +insert it into your tests when you want to set up additional state once +before the tests are run.</li> + +<li> +<a href="javadoc/junit/extensions/ExceptionTestCase.html">ExceptionTestCase</a> +- A TestCase that expects a particular Exception to be thrown.</li> +</ul> + +<hr WIDTH="100%"> +</body> +</html> diff --git a/lib/junit/junit-src.zip b/lib/junit/junit-src.zip Binary files differnew file mode 100644 index 000000000..2a8c7ce03 --- /dev/null +++ b/lib/junit/junit-src.zip diff --git a/lib/junit/junit.jar b/lib/junit/junit.jar Binary files differnew file mode 100644 index 000000000..914a5cfa9 --- /dev/null +++ b/lib/junit/junit.jar diff --git a/lib/junit/src.jar b/lib/junit/src.jar Binary files differnew file mode 100644 index 000000000..2a8c7ce03 --- /dev/null +++ b/lib/junit/src.jar |