Package junit.runner
Class BaseTestRunner
- java.lang.Object
-
- junit.runner.BaseTestRunner
-
- All Implemented Interfaces:
TestListener
- Direct Known Subclasses:
TestRunner
public abstract class BaseTestRunner extends Object implements TestListener
Base class for all test runners. This class was born live on stage in Sardinia during XP2000.
-
-
Field Summary
Fields Modifier and Type Field Description static String
SUITE_METHODNAME
-
Constructor Summary
Constructors Constructor Description BaseTestRunner()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
addError(Test test, Throwable e)
An error occurred.void
addFailure(Test test, AssertionFailedError e)
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 stylestatic String
getFilteredTrace(String stack)
Filters stack frames from internal JUnit classesstatic String
getFilteredTrace(Throwable e)
Returns a filtered stack tracestatic 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.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 nullprotected 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 runnerstatic 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 e)
abstract void
testStarted(String testName)
static String
truncate(String s)
Truncates a String to the maximum length.protected boolean
useReloadingTestSuiteLoader()
-
-
-
Field Detail
-
SUITE_METHODNAME
public static final String SUITE_METHODNAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
startTest
public void startTest(Test test)
Description copied from interface:TestListener
A test started.- Specified by:
startTest
in interfaceTestListener
-
setPreferences
protected static void setPreferences(Properties preferences)
-
getPreferences
protected static Properties getPreferences()
-
savePreferences
public static void savePreferences() throws IOException
- Throws:
IOException
-
endTest
public void endTest(Test test)
Description copied from interface:TestListener
A test ended.- Specified by:
endTest
in interfaceTestListener
-
addError
public void addError(Test test, Throwable e)
Description copied from interface:TestListener
An error occurred.- Specified by:
addError
in interfaceTestListener
-
addFailure
public void addFailure(Test test, AssertionFailedError e)
Description copied from interface:TestListener
A failure occurred.- Specified by:
addFailure
in interfaceTestListener
-
testStarted
public abstract void testStarted(String testName)
-
testEnded
public abstract void testEnded(String testName)
-
getTest
public Test getTest(String suiteClassName)
Returns the Test corresponding to the given suite. This is a template method, subclasses override runFailed(), clearStatus().
-
elapsedTimeAsString
public String elapsedTimeAsString(long runTime)
Returns the formatted string of the elapsed time.
-
processArguments
protected String processArguments(String[] args)
Processes the command line arguments and returns the name of the suite class to run or null
-
setLoading
public void setLoading(boolean enable)
Sets the loading behaviour of the test runner
-
extractClassName
public String extractClassName(String className)
Extract the class name from a String in VA/Java style
-
runFailed
protected abstract void runFailed(String message)
Override to define how to handle a failed loading of a test suite.
-
loadSuiteClass
protected Class<?> loadSuiteClass(String suiteClassName) throws ClassNotFoundException
Returns the loaded Class for a suite name.- Throws:
ClassNotFoundException
-
clearStatus
protected void clearStatus()
Clears the status message.
-
useReloadingTestSuiteLoader
protected boolean useReloadingTestSuiteLoader()
-
getPreference
public static int getPreference(String key, int dflt)
-
getFilteredTrace
public static String getFilteredTrace(String stack)
Filters stack frames from internal JUnit classes
-
showStackRaw
protected static boolean showStackRaw()
-
-