Artima SuiteRunner is a free testing toolkit for Java, released under
the Open Software License. You can use this
tool with JUnit to run existing JUnit TestSuites, or stand-alone, to create unit and
conformance tests for Java APIs.

To download a ZIP file containing source, binaries, and examples for Artima SuiteRunner,
please click on the following link:

Getting Help

If you have questions, comments, criticisms, or suggestions about Artima SuiteRunner,
please post to the SuiteRunner Forum.

You may also wish to read the
Artima SuiteRunner Tutorial, an article that
shows you how to build conformance and unit tests with Artima SuiteRunner.

Change Log

1.0beta7 - Released June 16, 2004

In the 1.0beta7 release, class Report has been made Serializable,
tests can now be configured via settings provide in the recipe, on the command line, or
via the Edit Recipe dialog. Two methods have been added to the public interface of Suite,
setUpSuite and tearDownSuite. setUpSuite is called before execute, and tearDownSuite after.
Any settings are passed as key value pairs in a Map in the context parameter of setUpSuite.
In addition

Added com.artima.examples.settings.ex1.PythagoreanSuite to the examples directory.

Added righttriangle.srj and wrontriangle.srj to the suiterunner-[release] directory.

Fixed the bug that was causing testSucceeded to be called after testFailed was called.

Changed Thread getThread() in class Report to String getThreadName(). This breaking change was done to
enable Report to be made Serializable.

Class Report now implements Serializable.

Added setUpSuite and tearDownSuite to the public interface of class Suite.

Invoke setUpSuite prior to execute, and tearDownSuite after execute, both from the Runner and in
Suite's implementation of executeSubSuites.

Added a Settings tab to the Edit Recipe dialog, that allows the user to manage the recipe's settings via the GUI.

Allow settings to be specified as properties in the recipe file, or on the command line via -D<key>=<value> arguments.

Pass any settings to the initial Suites listed in the recipe via the Map passed to setUpSuite.

1.0beta6 - Released March 10, 2003

The 1.0beta6 release adds a new script-driven example, adds JavaDoc API documentation for the examples, and
modifies and clarifies the contract for Suite's implementation of executeTestMethods:

Added com.artima.examples.scriptdriven.ex1.ScriptDrivenAccountSuite to the examples directory.

Added com.artima.examples.scriptdriven.ex1.ScriptGenerator to the examples directory.

Added JavaDoc API documentation for all the examples in the example/javadoc directory.

Make sure tearDownFixture executes if setUpFixture returns normally, even if the test method completes abruptly with an exception.

Abort execution of all remaining test methods if either setUpFixture or tearDownFixture completes abruptly with an exception, but still attempt executing any sub-Suites.

Clarified the contract of executeTestMethods, so it mentions it invokes setUpFixture and tearDownFixture, and explains its behavior when either of these throws an exception.

1.0beta5 - Released February 23, 2003

The 1.0beta5 release adds a new XMLReporter example and fixes one bug in 1.0beta4:

Added a com.artima.examples.reporter.xml.ex1.XMLReporter to the examples directory.

Fixed a bug that was causing two instances of Custom reporters to be created instead of one.

1.0beta4 - Released February 16, 2003

This release changes two method names in the public API, fixes a few minor bugs, and makes a few cosmetic enhancements over 1.0beta3:

In org.suiterunner.Suite, method setupFixture is now setUpFixture.

In org.suiterunner.Suite, method cleanupFixture is now tearDownFixture.

In 1.0beta3, the open/save recipe file chooser was actually the same object as the edit runpath's JAR/directory chooser, and they interfered with each other a bit. Now use individual objects for each.

Changed the file filter text in the file choosers to something more reasonable: "Recipe Files (*.srj)" and "JAR Files (*.jar)".

This time, remembered to update the version number in the about box. In 1.0beta3 it still said 1.0beta2. It now says 1.0beta4.

1.0beta3 - Released February 12, 2003

The 1.0beta3 release fixes three bugs in 1.0beta2:

OK button of Suite Selector dialog is now enabled when appropriate.

The extraneous InterruptedException on startup on Mac OS X Java 1.3 no
longed causes a stack trace to show up on the standard output.

When running without a GUI, an event handler thread is no longer fired
off, which was preventing the app from exiting on completion of the test.
The app now exits immediately when a test run without the GUI completes.

1.0beta2 - Released January 24, 2003

The 1.0beta2 release is the inital public release of Artima SuiteRunner.