Class JUnitTestRunner
java.lang.Object
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner
- All Implemented Interfaces:
- junit.framework.TestListener,- JUnitTaskMirror.JUnitTestRunnerMirror
public class JUnitTestRunner
extends Object
implements junit.framework.TestListener, JUnitTaskMirror.JUnitTestRunnerMirror
Simple Testrunner for JUnit that runs all tests of a testsuite.
 
This TestRunner expects a name of a TestCase class as its argument. If this class provides a static suite() method it will be called and the resulting Test will be run. So, the signature should be
     public static junit.framework.Test suite()
 
 If no such method exists, all public methods starting with "test" and taking no argument will be run.
Summary output is generated at the end.
- Since:
- Ant 1.2
- 
Field SummaryFields inherited from interface org.apache.tools.ant.taskdefs.optional.junit.JUnitTaskMirror.JUnitTestRunnerMirrorERRORS, FAILURES, IGNORED_FILE_NAME, SUCCESS
- 
Constructor SummaryConstructorsConstructorDescriptionJUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure) Constructor for fork=true or when the user hasn't specified a classpath.JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput) Constructor for fork=true or when the user hasn't specified a classpath.JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents) Constructor for fork=true or when the user hasn't specified a classpath.JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents, ClassLoader loader) Constructor to use when the user has specified a classpath.JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, ClassLoader loader) Constructor to use when the user has specified a classpath.JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, ClassLoader loader) Constructor to use when the user has specified a classpath.JUnitTestRunner(JUnitTest test, String[] methods, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents) Constructor for fork=true or when the user hasn't specified a classpath.JUnitTestRunner(JUnitTest test, String[] methods, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents, ClassLoader loader) Constructor to use when the user has specified a classpath.
- 
Method SummaryModifier and TypeMethodDescriptionvoidInterface TestListener.voidaddFailure(junit.framework.Test test, Throwable t) Interface TestListener for JUnit <= 3.4.voidaddFailure(junit.framework.Test test, junit.framework.AssertionFailedError t) Interface TestListener for JUnit > 3.4.voidAdd a formatter.voidAdd a formatter to the test.voidendTest(junit.framework.Test test) Interface TestListener.static StringfilterStack(String stack) Filters stack frames from internal JUnit and Ant classesstatic StringReturns a filtered stack trace.intReturns what System.exit() would return in the standalone version.voidhandleErrorFlush(String output) Handle output sent to System.err.voidhandleErrorOutput(String output) Handle output sent to System.err.voidhandleFlush(String output) Handle output sent to System.out.inthandleInput(byte[] buffer, int offset, int length) Handle input.voidhandleOutput(String output) Handle a string destined for standard output.static voidEntry point for standalone (forked) mode.voidrun()Run the test.voidsetPermissions(Permissions permissions) Permissions for the test run.voidstartTest(junit.framework.Test t) Interface TestListener.
- 
Constructor Details- 
JUnitTestRunnerpublic JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure) Constructor for fork=true or when the user hasn't specified a classpath.- Parameters:
- test- the test to run.
- haltOnError- whether to stop the run if an error is found.
- filtertrace- whether to filter junit.*.* stack frames out of exceptions
- haltOnFailure- whether to stop the run if failure is found.
 
- 
JUnitTestRunnerpublic JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput) Constructor for fork=true or when the user hasn't specified a classpath.- Parameters:
- test- the test to run.
- haltOnError- whether to stop the run if an error is found.
- filtertrace- whether to filter junit.*.* stack frames out of exceptions
- haltOnFailure- whether to stop the run if failure is found.
- showOutput- whether to send output to System.out/.err as well as formatters.
 
- 
JUnitTestRunnerpublic JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents) Constructor for fork=true or when the user hasn't specified a classpath.- Parameters:
- test- the test to run.
- haltOnError- whether to stop the run if an error is found.
- filtertrace- whether to filter junit.*.* stack frames out of exceptions
- haltOnFailure- whether to stop the run if failure is found.
- showOutput- whether to send output to System.out/.err as well as formatters.
- logTestListenerEvents- whether to print TestListener events.
- Since:
- Ant 1.7
 
- 
JUnitTestRunnerpublic JUnitTestRunner(JUnitTest test, String[] methods, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents) Constructor for fork=true or when the user hasn't specified a classpath.- Parameters:
- test- the test to run.
- methods- names of methods of the test to be executed.
- haltOnError- whether to stop the run if an error is found.
- filtertrace- whether to filter junit.*.* stack frames out of exceptions
- haltOnFailure- whether to stop the run if failure is found.
- showOutput- whether to send output to System.out/.err as well as formatters.
- logTestListenerEvents- whether to print TestListener events.
- Since:
- 1.8.2
 
- 
JUnitTestRunnerpublic JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, ClassLoader loader) Constructor to use when the user has specified a classpath.- Parameters:
- test- the test to run.
- haltOnError- whether to stop the run if an error is found.
- filtertrace- whether to filter junit.*.* stack frames out of exceptions
- haltOnFailure- whether to stop the run if failure is found.
- loader- the classloader to use running the test.
 
- 
JUnitTestRunnerpublic JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, ClassLoader loader) Constructor to use when the user has specified a classpath.- Parameters:
- test- the test to run.
- haltOnError- whether to stop the run if an error is found.
- filtertrace- whether to filter junit.*.* stack frames out of exceptions
- haltOnFailure- whether to stop the run if failure is found.
- showOutput- whether to send output to System.out/.err as well as formatters.
- loader- the classloader to use running the test.
 
- 
JUnitTestRunnerpublic JUnitTestRunner(JUnitTest test, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents, ClassLoader loader) Constructor to use when the user has specified a classpath.- Parameters:
- test- the test to run.
- haltOnError- whether to stop the run if an error is found.
- filtertrace- whether to filter junit.*.* stack frames out of exceptions
- haltOnFailure- whether to stop the run if failure is found.
- showOutput- whether to send output to System.out/.err as well as formatters.
- logTestListenerEvents- whether to print TestListener events.
- loader- the classloader to use running the test.
- Since:
- Ant 1.7
 
- 
JUnitTestRunnerpublic JUnitTestRunner(JUnitTest test, String[] methods, boolean haltOnError, boolean filtertrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents, ClassLoader loader) Constructor to use when the user has specified a classpath.- Parameters:
- test- JUnitTest
- methods- String[]
- haltOnError- boolean
- filtertrace- boolean
- haltOnFailure- boolean
- showOutput- boolean
- logTestListenerEvents- boolean
- loader- ClassLoader
- Since:
- 1.8.2
 
 
- 
- 
Method Details- 
runpublic void run()Run the test.- Specified by:
- runin interface- JUnitTaskMirror.JUnitTestRunnerMirror
 
- 
getRetCodepublic int getRetCode()Returns what System.exit() would return in the standalone version.- Specified by:
- getRetCodein interface- JUnitTaskMirror.JUnitTestRunnerMirror
- Returns:
- 2 if errors occurred, 1 if tests failed else 0.
 
- 
startTestpublic void startTest(junit.framework.Test t) Interface TestListener.A new Test is started. - Specified by:
- startTestin interface- junit.framework.TestListener
- Parameters:
- t- the test.
 
- 
endTestpublic void endTest(junit.framework.Test test) Interface TestListener.A Test is finished. - Specified by:
- endTestin interface- junit.framework.TestListener
- Parameters:
- test- the test.
 
- 
addFailureInterface TestListener for JUnit <= 3.4.A Test failed. - Parameters:
- test- the test.
- t- the exception thrown by the test.
 
- 
addFailurepublic void addFailure(junit.framework.Test test, junit.framework.AssertionFailedError t) Interface TestListener for JUnit > 3.4.A Test failed. - Specified by:
- addFailurein interface- junit.framework.TestListener
- Parameters:
- test- the test.
- t- the assertion thrown by the test.
 
- 
addErrorInterface TestListener.An error occurred while running the test. - Specified by:
- addErrorin interface- junit.framework.TestListener
- Parameters:
- test- the test.
- t- the error thrown by the test.
 
- 
setPermissionsPermissions for the test run.- Specified by:
- setPermissionsin interface- JUnitTaskMirror.JUnitTestRunnerMirror
- Parameters:
- permissions- the permissions to use.
- Since:
- Ant 1.6
 
- 
handleOutputHandle a string destined for standard output.- Specified by:
- handleOutputin interface- JUnitTaskMirror.JUnitTestRunnerMirror
- Parameters:
- output- the string to output
 
- 
handleInputHandle input.- Specified by:
- handleInputin interface- JUnitTaskMirror.JUnitTestRunnerMirror
- Parameters:
- buffer- not used.
- offset- not used.
- length- not used.
- Returns:
- -1 always.
- Throws:
- IOException- never.
- Since:
- Ant 1.6
- See Also:
 
- 
handleErrorOutputHandle output sent to System.err..- Specified by:
- handleErrorOutputin interface- JUnitTaskMirror.JUnitTestRunnerMirror
- Parameters:
- output- output for System.err
 
- 
handleFlushHandle output sent to System.out..- Specified by:
- handleFlushin interface- JUnitTaskMirror.JUnitTestRunnerMirror
- Parameters:
- output- output for System.out.
 
- 
handleErrorFlushHandle output sent to System.err..- Specified by:
- handleErrorFlushin interface- JUnitTaskMirror.JUnitTestRunnerMirror
- Parameters:
- output- coming from System.err
 
- 
addFormatterAdd a formatter.- Parameters:
- f- the formatter to add.
 
- 
addFormatterAdd a formatter to the test..- Specified by:
- addFormatterin interface- JUnitTaskMirror.JUnitTestRunnerMirror
- Parameters:
- f- the formatter to use.
 
- 
mainEntry point for standalone (forked) mode.Parameters: testcaseclassname plus parameters in the format key=value, none of which is required. Test runner attributes key description default value haltOnError halt test on errors? false haltOnFailure halt test on failures? false formatter A JUnitResultFormatter given as classname,filename. If filename is omitted, System.out is assumed. none showoutput send output to System.err/.out as well as to the formatters? false logtestlistenerevents log TestListener events to System.out. false methods Comma-separated list of names of individual test methods to execute. null - Parameters:
- args- the command line arguments.
- Throws:
- IOException- on error.
 
- 
getFilteredTraceReturns a filtered stack trace. This is ripped out of junit.runner.BaseTestRunner.- Parameters:
- t- the exception to filter.
- Returns:
- the filtered stack trace.
 
- 
filterStackFilters stack frames from internal JUnit and Ant classes- Parameters:
- stack- the stack trace to filter.
- Returns:
- the filtered stack.
 
 
-