org.junit.runners
Class Suite
java.lang.Objectorg.junit.runner.Runner
org.junit.runners.ParentRunner<Runner>
org.junit.runners.Suite
- All Implemented Interfaces:
- Describable, Filterable, Orderable, Sortable
- Direct Known Subclasses:
- Categories, Enclosed, Parameterized
-
public class Suite
- extends ParentRunner< Runner>
Using Suite
as a runner allows you to manually build a suite containing tests from many classes. It is the JUnit 4 equivalent of the JUnit 3.8.x static Test
suite()
method. To use it, annotate a class with @RunWith(Suite.class)
and @SuiteClasses({TestClass1.class, ...})
. When you run this class, it will run all the tests in all the suite classes.
- Since:
- 4.0
Nested Class Summary | |
---|---|
static interface |
Suite.SuiteClasses The SuiteClasses annotation specifies the classes to be run when a class annotated with @RunWith(Suite.class) is run. |
Constructor Summary | |
---|---|
protected |
Suite(Class<?> klass, Class<?>[] suiteClasses) Call this when the default builder is good enough. |
protected |
Suite(Class<?> klass, List<Runner> runners) Called by this class and subclasses once the runners making up the suite have been determined |
|
Suite(Class<?> klass, RunnerBuilder builder) Called reflectively on classes annotated with @RunWith(Suite.class) |
|
Suite(RunnerBuilder builder, Class<?>[] classes) Call this when there is no single root class (for example, multiple class names passed on the command line to JUnitCore |
protected |
Suite(RunnerBuilder builder, Class<?> klass, Class<?>[] suiteClasses) Called by this class and subclasses once the classes making up the suite have been determined |
Method Summary | |
---|---|
protected Description |
describeChild(Runner child) Returns a Description for child , which can be assumed to be an element of the list returned by ParentRunner.getChildren() |
static Runner |
emptySuite() Returns an empty suite. |
protected List<Runner> |
getChildren() Returns a list of objects that define the children of this Runner. |
protected void |
runChild(Runner runner, RunNotifier notifier) Runs the test corresponding to child , which can be assumed to be an element of the list returned by ParentRunner.getChildren() . |
Methods inherited from class org.junit.runners.ParentRunner |
---|
childrenInvoker, classBlock, classRules, collectInitializationErrors, createTestClass, filter, getDescription, getName, getRunnerAnnotations, getTestClass, isIgnored, order, run, runLeaf, setScheduler, sort, validatePublicVoidNoArgMethods, withAfterClasses, withBeforeClasses, withInterruptIsolation |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
Suite
public Suite(Class<?> klass, RunnerBuilder builder) throws InitializationError
-
Called reflectively on classes annotated with
@RunWith(Suite.class)
- Parameters:
-
klass
- the root class -
builder
- builds runners for classes in the suite - Throws:
-
InitializationError
Suite
public Suite(RunnerBuilder builder, Class<?>[] classes) throws InitializationError
-
Call this when there is no single root class (for example, multiple class names passed on the command line to
JUnitCore
- Parameters:
-
builder
- builds runners for classes in the suite -
classes
- the classes in the suite - Throws:
-
InitializationError
Suite
protected Suite(Class<?> klass, Class<?>[] suiteClasses) throws InitializationError
-
Call this when the default builder is good enough. Left in for compatibility with JUnit 4.4.
- Parameters:
-
klass
- the root of the suite -
suiteClasses
- the classes in the suite - Throws:
-
InitializationError
Suite
protected Suite(RunnerBuilder builder, Class<?> klass, Class<?>[] suiteClasses) throws InitializationError
-
Called by this class and subclasses once the classes making up the suite have been determined
- Parameters:
-
builder
- builds runners for classes in the suite -
klass
- the root of the suite -
suiteClasses
- the classes in the suite - Throws:
-
InitializationError
Suite
protected Suite(Class<?> klass, List<Runner> runners) throws InitializationError
-
Called by this class and subclasses once the runners making up the suite have been determined
- Parameters:
-
klass
- root of the suite -
runners
- for each class in the suite, aRunner
- Throws:
-
InitializationError
Method Detail |
---|
emptySuite
public static Runner emptySuite()
-
Returns an empty suite.
-
getChildren
protected List<Runner> getChildren()
-
Description copied from class:
ParentRunner
-
Returns a list of objects that define the children of this Runner.
-
- Specified by:
-
getChildren
in classParentRunner<Runner>
-
describeChild
protected Description describeChild(Runner child)
-
Description copied from class:
ParentRunner
-
Returns a
Description
forchild
, which can be assumed to be an element of the list returned byParentRunner.getChildren()
-
- Specified by:
-
describeChild
in classParentRunner<Runner>
-
runChild
protected void runChild(Runner runner, RunNotifier notifier)
-
Description copied from class:
ParentRunner
-
Runs the test corresponding to
child
, which can be assumed to be an element of the list returned byParentRunner.getChildren()
. Subclasses are responsible for making sure that relevant test events are reported throughnotifier
-
- Specified by:
-
runChild
in classParentRunner<Runner>
-