diff options
author | Brett Chabot <brettchabot@google.com> | 2009-06-17 17:21:33 -0700 |
---|---|---|
committer | Brett Chabot <brettchabot@google.com> | 2009-06-17 17:21:33 -0700 |
commit | 58a8b0aba2dec5695628a2bf25a3fae42c2c3533 (patch) | |
tree | 7c3e88d9efbf280f4849710858b6a67c740920be /README.html | |
parent | d550fde3ba6ac3e9b5abb87b7d722a4d30f8d57b (diff) | |
download | junit-58a8b0aba2dec5695628a2bf25a3fae42c2c3533.tar.gz |
Add junit 3.8.2 source to external/junit.
Diffstat (limited to 'README.html')
-rw-r--r-- | README.html | 736 |
1 files changed, 736 insertions, 0 deletions
diff --git a/README.html b/README.html new file mode 100644 index 0000000..df6f10f --- /dev/null +++ b/README.html @@ -0,0 +1,736 @@ +<!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="Microsoft FrontPage 4.0"> + <meta name="Author" content="Erich Gamma & Kent Beck"> + <title>JUnit 3.8</title> +</head> +<body> +<h1> +<b><font color="#00cc00">J</font><font color="#ff0000">U</font><font + color="#000000">nit +3.8.2</font></b></h1> +<hr width="100%"> +<font color="#000000"><br> +11/11/2004<br> +</font> +<ul> + <li><font color="#000000"><a href="#Summary%20of">Summary of Changes</a></font></li> + <li> + <font color="#000000"><a href="#Contents">Contents</a></font></li> + <li> + <font color="#000000"><a href="#Installation">Installation</a></font></li> + <li> + <font color="#000000"><a href="#Getting">Getting Started</a></font></li> + <li> + <font color="#000000"><a href="#Documentation">Documentation</a></font></li> +</ul> +<h2> +<font><a name="Summary of"></a><font color="#000000">Summary of Changes +between 3.8.1 and 3.8.2</font></font></h2> +<font color="#000000">The changes between the versions are minimal and +the focus was on fixing the accumulated bug reports. The most +signifanct change is replacing the much-reviled string comparison +format with something easier to read and use.<br> +</font> +<ul> + <li>ComparisonFailure shows context. <br> + </li> + <ul> + <li>assertEquals("Mary had a little lamb", "Mary had the little +lamb") shows: expected:<Mary had [a] little lamb> but +was:<Mary had [the] little lamb><br> +Longer prefixes and suffixes are truncated to a fixed size (currently +20):</li> + <li>expected:<...st of the emergency [broadcasting] +system> but was:<...st of the emergency [locating] system><br> + </li> + </ul> + <li><font color="#000000">Running single tests. +junit.ui.TestRunner can be invoked with "-m</font> ClassName.testName" +to run a single test.</li> + <li>TestSuite(Class[]). +There is a new TestSuite constructor that takes an array of classes as +a parameter and returns a suite of suites, each of which is constructed +from a single class.</li> +</ul> +<h3><font><font color="#000000">Closed Bugs/Patches and Enhancment +Requests<br> +</font></font></h3> +<ul> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=698067&group_id=15278&atid=115278">assertEquals(float,float,delta) +fails on negative delta</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=609972&group_id=15278&atid=115278">'...' +in ComparisonFailure</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=461535&group_id=15278&atid=115278">Trouble +in teardown hides orig. probl.</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=609819&group_id=15278&atid=115278">NaN's +in assertEquals</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=620039&group_id=15278&atid=115278">BaseTestRunner.setPreference +static</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=658044&group_id=15278&atid=115278">failNotEquals() +should be protected</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=777097&group_id=15278&atid=115278">RFE: +make private methods protected</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=654507&group_id=15278&atid=365278">Printing +version number</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=993150&group_id=15278&atid=315278">Patch +to quell warnings in tiger</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=657593&group_id=15278&atid=315278">Enhanced +ComparisonFailure output</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=625016&group_id=15278&atid=315278">addt'l +TestSuite constructrs for Class[]</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=908467&group_id=15278&atid=315278">Run +one test method for junit</a></li> + <li><a + href="http://sourceforge.net/tracker/index.php?func=detail&aid=756480&group_id=15278&atid=315278">excluded.properties: +Add commons logging</a></li> +</ul> +<h2><font color="#000000">Summary of Changes between 3.8 and 3.8.1</font></h2> +<ul> + <font color="#000000"> <li>Backed out setting the testing Thread's +context class loader (see <a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=598200&group_id=15278&atid=115278">JUnit +not setting ClassLoader</a>). It has caused problems in tests that +worked OK before. See the bug report for more details.</li> + <li>Fixes: + <ul> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=601326&group_id=15278&atid=115278">NPE +in ComparisonFailure</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=602948&group_id=15278&atid=115278">Swing +UI: NoSuchMethodError on JDK 1.3</a></li> + </ul> + </li> + </font> +</ul> +<h2> +<font color="#000000">Summary of Changes between 3.7 and 3.8</font></h2> +<h3> +<font color="#000000">Framework</font></h3> +<ul> + <li> + <font color="#000000">Made the string argument TestCase constructor +optional. You can now delete +constructors of the form "FooTestCase(String name) { super(name); }".</font></li> + <li> + <font color="#000000">Deleted deprecated assert(boolean) in favor +of assertTrue(boolean) and +assertFalse(boolean). To migrate to JUnit 3.8, rename calls to +assert(boolean) +to call assertTrue(boolean).</font></li> + <li> + <font color="#000000">Added assertFalse() to avoid the difficult of +reading the assertTrue(! +condition).</font></li> + <li> + <font color="#000000">Added assertNotSame(Object, Object).</font></li> + <li> + <font color="#000000">Deleted deprecated TestCase.name() in favor +of TestCase.getName().</font></li> + <li> + <font color="#000000">Deleted deprecated package junit.ui in favor +of junit.awtui.</font></li> +</ul> +<h3> +<font color="#000000">Test Runner</font></h3> +<ul> + <li> + <font color="#000000">When you compare two long strings with a +small delta embedded in the middle, it +is hard to spot the difference. In 3.8, when you call +assertEquals(String, +String), only the differences between the strings are displayed. The +common +prefix and suffix are replaced with "...".</font></li> + <li> + <font color="#000000">Added initial version of a TestRunListener +attached to TestRunners which +eventually will replace TestListeners attached to the TestResult.</font></li> + <li> + <font color="#000000">Filled in ActiveTestSuite constructors.</font></li> + <li> + <font color="#000000">Added these packages to the +excluded.properties:<font size="2"> + <ul> + <li>org.w3c.dom.*</li> + <li>org.xml.sax.*</li> + <li>net.jini.*</li> + </ul> + </font></font></li> + <li><font color="#000000">Extracted textual formatting of a +TestResult from junit.textui.TestRunner into ResultPrinter.</font></li> +</ul> +<h3><font color="#000000">Documentation</font></h3> +<ul> + <font color="#000000"> <li>Much improved <a href="doc/faq/faq.htm">FAQ</a> +thanks to Mike Clark.</li> + </font> +</ul> +<h3><font color="#000000">Closed Bugs</font></h3> +<ul> + <font color="#000000"> <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=583346&group_id=15278&atid=115278">Class +loader problem</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=551239&group_id=15278&atid=115278">Cookbook +Simple Test Case problems</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=539015&group_id=15278&atid=115278">License +not included in source</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=560081&group_id=15278&atid=115278">assert +is a keyword</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=572444&group_id=15278&atid=115278">javadoc +returns mysterious message</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=581251&group_id=15278&atid=115278">swingui +CounterPanel values disappear</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=574641&group_id=15278&atid=115278">TestCase +javadoc incorrect example</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=582784&group_id=15278&atid=115278">silly +cookbook error</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=583328&group_id=15278&atid=115278">junit +properties missfunction</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=595957&group_id=15278&atid=115278">Test.java +is not Serializable</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=598200&group_id=15278&atid=115278">JUnit +not setting ClassLoader`</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=592713&group_id=15278&atid=115278">NullPointerException +when loading suite</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=544683&group_id=15278&atid=115278">labels +for bug counts too small in Swing</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=537502&group_id=15278&atid=115278">Swing +TestRunner layout shifts</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=528868&group_id=15278&atid=115278">Exit +code problem for cygwin/w2k</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=529953&group_id=15278&atid=115278">Automatic +reload causes strange errors</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=532952&group_id=15278&atid=115278">TestRunner +fails with swing/awtui</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=533411&group_id=15278&atid=115278">CVS +version doesn't build on NetBSD</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=520210&group_id=15278&atid=115278">NullPointerException +JUnit sample w/ Ant</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=527511&group_id=15278&atid=115278">money +sample bug</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=491981&group_id=15278&atid=115278">incomplete +message from failNotSame()</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=471577&group_id=15278&atid=115278">Icons +on systems with 64 colors exceptio</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=470324&group_id=15278&atid=115278">1000+ +tests, swing gui doesn't display</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=442752&group_id=15278&atid=115278">test +selector included incorrect classes</a></li> + <li><a + href="https://sourceforge.net/tracker/index.php?func=detail&aid=430974&group_id=15278&atid=115278">No +UI update when re-run methods fail</a></li> + </font> +</ul> +<h2> +<font color="#000000">Summary of Changes between 3.6 and 3.7</font></h2> +<h3> +<font color="#000000">GUI</font></h3> +<ul> + <li> + <font color="#000000">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.</font></li> + <li> + <font color="#000000">Stopped reloading classes when running in +VisualAge for Java.</font></li> + <li> + <font color="#000000">Print total number of tests as well as number +of tests run so far (Swing +only).</font></li> +</ul> +<h3> +<font color="#000000">Framework</font></h3> +<ul> + <li> + <font color="#000000">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".</font></li> + <li> + <font color="#000000">Added accessors for TestCase.fName and +TestSuite.fName.</font></li> + <li> + <font color="#000000">Added a no argument TestCase constructor to +support serialization.</font></li> + <li> + <font color="#000000">Improved warnings when constructing +TestSuites.</font></li> +</ul> +<h3> +<font color="#000000">Text Runner</font></h3> +<ul> + <li> + <font color="#000000">Made doRun() public so clients can create a +text runner with a specified +output stream and then run tests.</font></li> +</ul> +<h3> +<font color="#000000">Fixed Bugs (SourceForge Bug Tracker Ids)</font></h3> +<font color="#000000"> [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 +</font> +<h2><font color="#000000">Summary of Changes between 3.5 and 3.6</font></h2> +<h3> +<font color="#000000">TestRunner</font></h3> +<ul> + <li> + <font color="#000000">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.</font></li> + <li> + <font color="#000000">Renames to address file name length +limitation on MacOS:</font></li> + <ul> + <li> + <font color="#000000">LoadingClassPathTestCollector -> +LoadingTestCollector</font></li> + <li> + <font color="#000000">SimpleClassPathTestCollector -> +SimpleTestCollector</font></li> + </ul> +</ul> +<h3> +<font color="#000000">Framework</font></h3> +<ul> + <li> + <font color="#000000">Added TestSuite.getName()</font></li> +</ul> +<h3> +<font color="#000000">Builds</font></h3> +<ul> + <li> + <font color="#000000">Updated the build script for Ant 1.3.</font></li> +</ul> +<h3> +<font color="#000000">Fixed Bugs (SourceForge Bug Tracker Ids)</font></h3> +<blockquote><font color="#000000">[ #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</font></blockquote> +<h3> +<font color="#000000">Documentation</font></h3> +<ul> + <li> + <font color="#000000">Added documentation about the <a + href="doc/JUnitProperties.html">properties</a> +supported by TestRunners.</font></li> + <li> + <font color="#000000">Updated the FAQ</font></li> +</ul> +<h2> +<font color="#000000">Summary of Changes between 3.4 and 3.5</font></h2> +<h3> +<font color="#000000">Framework</font></h3> +<ul> + <li> + <font color="#000000">Added TestSuite.addTestSuite(Class testClass)</font></li> + <font color="#000000"><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)</font> +</ul> +<h3> +<font color="#000000">TestRunner</font></h3> +<ul> + <li> + <font color="#000000">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:</font></li> + <font color="#000000"><br> + +TestCollectorClass=junit.swingui.LoadingClassPathTestCollector + <br> +This class has to be installed on the class path. + <br> +JUnit provides two different TestCollector implementations: + </font> + <ul> + <li> + <font color="#000000">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.</font></li> + <li> + <font color="#000000">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.</font></li> + </ul> + <font color="#000000">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> + </font> +</ul> +<h3> +<font color="#000000">Tests</font></h3> +<ul> + <li> + <font color="#000000">TextRunnerTest now only depends on a nonzero +status to indicate abnormal +termination.</font></li> + <li> + <font color="#000000">TextRunnerTest now also passes on JDK 1.1.*. +It uses the -classpath command +line argument instead of -cp.</font></li> +</ul> +<h3> +<font color="#000000">Documentation</font></h3> +<ul> + <li> + <font color="#000000">Add an FAQ entry about what to do when the +junit tests provided with the +distribution can't be found.</font></li> +</ul> +<h2> +<font color="#000000">Older Change Notes</font></h2> +<blockquote> + <li><font color="#000000">Changes between <a + href="doc/changes34.html">2.1 and 3.4</a></font></li> + <li> + <font color="#000000">Changes between <a href="doc/changes21.html">1.0 +and 2.1</a></font></li> +</blockquote> +<h2> +<font color="#000000"><a name="Contents"></a>Contents of the Release</font></h2> +<table cellspacing="0" cellpadding="0"> + <tbody> + <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> + </tbody> +</table> +<h2> +<font color="#000000"><a name="Installation"></a>Installation</font></h2> +<font color="#000000">Below are the installation steps for installing +JUnit: +</font> +<ol> + <li> + <font color="#000000">unzip the junit.zip file</font></li> + <li> + <font color="#000000">add<i> </i><b>junit.jar</b> to the +CLASSPATH. For example: <tt>set +classpath=%classpath%;INSTALL_DIR\junit3\junit.jar</tt></font></li> + <li> + <font color="#000000">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.</font></li> + <font color="#000000"><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 + </font> + <ul> + <li> + <font color="#000000">for the batch TestRunner type:</font></li> + <font color="#000000"><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></font> + </ul> +</ol> +<font color="#000000"><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. +</font> +<h2><font color="#000000"><a name="Getting"></a>Getting Started</font></h2> +<font color="#000000">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. +</font> +<p><font color="#000000">You find additional samples in the +junit.samples package: +</font></p> +<ul> + <li> + <font color="#000000">SimpleTest.java - some simple test cases</font></li> + <li> + <font color="#000000">VectorTest.java - test cases for +java.util.Vector</font></li> +</ul> +<h2> +<font color="#000000"><a name="Documentation"></a>Documentation</font></h2> +<blockquote><font color="#000000"><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.<br> + <a href="cpl-v10.html">License</a> + <br> + The terms of the common public license used for +JUnit.</font></blockquote> +<h2> +<font color="#000000"><a name="Extending"></a>Extending JUnit</font></h2> +<font color="#000000">Examples of possible JUnit extensions can be +found in the <tt>junit.extensions</tt> +package: +</font> +<ul> + <li> + <font color="#000000"><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.</font></li> + <li> + <font color="#000000"><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.</font></li> + <li> + <font color="#000000"><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.</font></li> + <li> + <font color="#000000"><a + href="javadoc/junit/extensions/ExceptionTestCase.html">ExceptionTestCase</a> +- A TestCase that expects a particular Exception to be thrown.</font></li> +</ul> +<hr width="100%"> +<!--webbot bot="HTMLMarkup" startspan --><font color="#000000"><a + href="http://sourceforge.net"><img + src="http://sourceforge.net/sflogo.php?group_id=15278" width="88" + height="31" border="0" alt="SourceForge Logo"></a><!--webbot +bot="HTMLMarkup" endspan --></font> +</body> +</html> |