junit.textui

Class TestRunner

Implemented Interfaces:
TestListener

public class TestRunner
extends BaseTestRunner

A command line based tool to run tests.
 java junit.textui.TestRunner [-wait] TestCaseClass
 
TestRunner expects the name of a TestCase class as argument. If this class defines a static suite method it will be invoked and the returned test is run. Otherwise all the methods starting with "test" having no arguments are run.

When the wait command line argument is given TestRunner waits until the users types RETURN.

TestRunner prints a trace as the tests are executed followed by a summary at the end.

Field Summary

static int
EXCEPTION_EXIT
static int
FAILURE_EXIT
static int
SUCCESS_EXIT

Fields inherited from class junit.runner.BaseTestRunner

SUITE_METHODNAME

Constructor Summary

TestRunner()
Constructs a TestRunner.
TestRunner(PrintStream writer)
Constructs a TestRunner using the given stream for all the output
TestRunner(ResultPrinter printer)
Constructs a TestRunner using the given ResultPrinter all the output

Method Summary

protected TestResult
createTestResult()
Creates the TestResult to be used for the test run.
TestResult
doRun(Test test)
TestResult
doRun(Test suite, boolean wait)
TestSuiteLoader
getLoader()
Always use the StandardTestSuiteLoader.
static void
main(args[] )
protected void
pause(boolean wait)
static void
run(Class testClass)
Runs a suite extracted from a TestCase subclass.
static TestResult
run(Test test)
Runs a single test and collects its results.
static void
runAndWait(Test suite)
Runs a single test and waits until the user types RETURN.
protected void
runFailed(String message)
void
setPrinter(ResultPrinter printer)
protected TestResult
start(args[] )
Starts a test run.
void
testEnded(String testName)
void
testFailed(int status, Test test, Throwable t)
void
testStarted(String testName)

Methods inherited from class junit.runner.BaseTestRunner

addError, addFailure, clearStatus, elapsedTimeAsString, endTest, extractClassName, getFilteredTrace, getFilteredTrace, getLoader, getPreference, getPreference, getPreferences, getTest, inVAJava, loadSuiteClass, processArguments, runFailed, savePreferences, setLoading, setPreference, setPreferences, showStackRaw, startTest, testEnded, testFailed, testStarted, truncate, useReloadingTestSuiteLoader

Field Details

EXCEPTION_EXIT

public static final int EXCEPTION_EXIT
Field Value:
2

FAILURE_EXIT

public static final int FAILURE_EXIT
Field Value:
1

SUCCESS_EXIT

public static final int SUCCESS_EXIT
Field Value:
0

Constructor Details

TestRunner

public TestRunner()
Constructs a TestRunner.

TestRunner

public TestRunner(PrintStream writer)
Constructs a TestRunner using the given stream for all the output

TestRunner

public TestRunner(ResultPrinter printer)
Constructs a TestRunner using the given ResultPrinter all the output

Method Details

createTestResult

protected TestResult createTestResult()
Creates the TestResult to be used for the test run.

doRun

public TestResult doRun(Test test)

doRun

public TestResult doRun(Test suite,
                        boolean wait)

getLoader

public TestSuiteLoader getLoader()
Always use the StandardTestSuiteLoader. Overridden from BaseTestRunner.
Overrides:
getLoader in interface BaseTestRunner

main

public static void main(args[] )

pause

protected void pause(boolean wait)

run

public static void run(Class testClass)
Runs a suite extracted from a TestCase subclass.

run

public static TestResult run(Test test)
Runs a single test and collects its results. This method can be used to start a test run from your program.
 public static void main (String[] args) {
     test.textui.TestRunner.run(suite());
 }
 

runAndWait

public static void runAndWait(Test suite)
Runs a single test and waits until the user types RETURN.

runFailed

protected void runFailed(String message)
Overrides:
runFailed in interface BaseTestRunner

setPrinter

public void setPrinter(ResultPrinter printer)

start

protected TestResult start(args[] )
            throws Exception
Starts a test run. Analyzes the command line arguments and runs the given test suite.

testEnded

public void testEnded(String testName)
Overrides:
testEnded in interface BaseTestRunner

testFailed

public void testFailed(int status,
                       Test test,
                       Throwable t)
Overrides:
testFailed in interface BaseTestRunner

testStarted

public void testStarted(String testName)
Overrides:
testStarted in interface BaseTestRunner