Package org.junit.runners
Class Suite
- All Implemented Interfaces:
Describable,Filterable,Orderable,Sortable
- Direct Known Subclasses:
Categories,Enclosed,Parameterized
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
Nested ClassesModifier and TypeClassDescriptionstatic @interfaceTheSuiteClassesannotation specifies the classes to be run when a class annotated with@RunWith(Suite.class)is run. -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCall this when the default builder is good enough.protectedCalled by this class and subclasses once the runners making up the suite have been determinedSuite(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 toJUnitCoreprotectedSuite(RunnerBuilder builder, Class<?> klass, Class<?>[] suiteClasses) Called by this class and subclasses once the classes making up the suite have been determined -
Method Summary
Modifier and TypeMethodDescriptionprotected DescriptiondescribeChild(Runner child) Returns aDescriptionforchild, which can be assumed to be an element of the list returned byParentRunner.getChildren()static RunnerReturns an empty suite.private static Class<?>[]getAnnotatedClasses(Class<?> klass) Returns a list of objects that define the children of this Runner.protected voidrunChild(Runner runner, RunNotifier notifier) Runs the test corresponding tochild, which can be assumed to be an element of the list returned byParentRunner.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
-
Field Details
-
runners
-
-
Constructor Details
-
Suite
Called reflectively on classes annotated with@RunWith(Suite.class)- Parameters:
klass- the root classbuilder- builds runners for classes in the suite- Throws:
InitializationError
-
Suite
Call this when there is no single root class (for example, multiple class names passed on the command line toJUnitCore- Parameters:
builder- builds runners for classes in the suiteclasses- the classes in the suite- Throws:
InitializationError
-
Suite
Call this when the default builder is good enough. Left in for compatibility with JUnit 4.4.- Parameters:
klass- the root of the suitesuiteClasses- 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 suiteklass- the root of the suitesuiteClasses- the classes in the suite- Throws:
InitializationError
-
Suite
Called by this class and subclasses once the runners making up the suite have been determined- Parameters:
klass- root of the suiterunners- for each class in the suite, aRunner- Throws:
InitializationError
-
-
Method Details
-
emptySuite
Returns an empty suite. -
getAnnotatedClasses
- Throws:
InitializationError
-
getChildren
Description copied from class:ParentRunnerReturns a list of objects that define the children of this Runner.- Specified by:
getChildrenin classParentRunner<Runner>
-
describeChild
Description copied from class:ParentRunnerReturns aDescriptionforchild, which can be assumed to be an element of the list returned byParentRunner.getChildren()- Specified by:
describeChildin classParentRunner<Runner>
-
runChild
Description copied from class:ParentRunnerRuns the test corresponding tochild, 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:
runChildin classParentRunner<Runner>
-