junit.runner

Class BaseTestRunner

Implemented Interfaces:
TestListener
Known Direct Subclasses:
TestRunner, TestRunner, TestRunner

public abstract class BaseTestRunner
extends java.lang.Object
implements TestListener

Base class for all test runners. This class was born live on stage in Sardinia during XP2000.

Field Summary

static String
SUITE_METHODNAME

Method Summary

void
addError(Test test, Throwable t)
An error occurred.
void
addFailure(Test test, AssertionFailedError t)
A failure occurred.
protected void
clearStatus()
Clears the status message.
String
elapsedTimeAsString(long runTime)
Returns the formatted string of the elapsed time.
void
endTest(Test test)
A test ended.
String
extractClassName(String className)
Extract the class name from a String in VA/Java style
static String
getFilteredTrace(String stack)
Filters stack frames from internal JUnit classes
static String
getFilteredTrace(Throwable t)
Returns a filtered stack trace
TestSuiteLoader
getLoader()
Returns the loader to be used.
static String
getPreference(String key)
static int
getPreference(String key, int dflt)
protected static Properties
getPreferences()
Test
getTest(String suiteClassName)
Returns the Test corresponding to the given suite.
static boolean
inVAJava()
protected Class
loadSuiteClass(String suiteClassName)
Returns the loaded Class for a suite name.
protected String
processArguments(String[] args)
Processes the command line arguments and returns the name of the suite class to run or null
protected abstract void
runFailed(String message)
Override to define how to handle a failed loading of a test suite.
static void
savePreferences()
void
setLoading(boolean enable)
Sets the loading behaviour of the test runner
void
setPreference(String key, String value)
protected static void
setPreferences(Properties preferences)
protected static boolean
showStackRaw()
void
startTest(Test test)
A test started.
abstract void
testEnded(String testName)
abstract void
testFailed(int status, Test test, Throwable t)
abstract void
testStarted(String testName)
static String
truncate(String s)
Truncates a String to the maximum length.
protected boolean
useReloadingTestSuiteLoader()

Field Details

SUITE_METHODNAME

public static final String SUITE_METHODNAME

Method Details

addError

public void addError(Test test,
                     Throwable t)
An error occurred.
Specified by:
addError in interface TestListener

addFailure

public void addFailure(Test test,
                       AssertionFailedError t)
A failure occurred.
Specified by:
addFailure in interface TestListener

clearStatus

protected void clearStatus()
Clears the status message.

elapsedTimeAsString

public String elapsedTimeAsString(long runTime)
Returns the formatted string of the elapsed time.

endTest

public void endTest(Test test)
A test ended.
Specified by:
endTest in interface TestListener

extractClassName

public String extractClassName(String className)
Extract the class name from a String in VA/Java style

getFilteredTrace

public static String getFilteredTrace(String stack)
Filters stack frames from internal JUnit classes

getFilteredTrace

public static String getFilteredTrace(Throwable t)
Returns a filtered stack trace

getLoader

public TestSuiteLoader getLoader()
Returns the loader to be used.

getPreference

public static String getPreference(String key)

getPreference

public static int getPreference(String key,
                                int dflt)

getPreferences

protected static Properties getPreferences()

getTest

public Test getTest(String suiteClassName)
Returns the Test corresponding to the given suite. This is a template method, subclasses override runFailed(), clearStatus().

inVAJava

public static boolean inVAJava()

loadSuiteClass

protected Class loadSuiteClass(String suiteClassName)
            throws ClassNotFoundException
Returns the loaded Class for a suite name.

processArguments

protected String processArguments(String[] args)
Processes the command line arguments and returns the name of the suite class to run or null

runFailed

protected abstract void runFailed(String message)
Override to define how to handle a failed loading of a test suite.

savePreferences

public static void savePreferences()
            throws IOException

setLoading

public void setLoading(boolean enable)
Sets the loading behaviour of the test runner

setPreference

public void setPreference(String key,
                          String value)

setPreferences

protected static void setPreferences(Properties preferences)

showStackRaw

protected static boolean showStackRaw()

startTest

public void startTest(Test test)
A test started.
Specified by:
startTest in interface TestListener

testEnded

public abstract void testEnded(String testName)

testFailed

public abstract void testFailed(int status,
                                Test test,
                                Throwable t)

testStarted

public abstract void testStarted(String testName)

truncate

public static String truncate(String s)
Truncates a String to the maximum length.

useReloadingTestSuiteLoader

protected boolean useReloadingTestSuiteLoader()