junit.framework

Class TestSuite

public class TestSuite extends Object implements Test

A TestSuite is a Composite of Tests. It runs a collection of test cases. Here is an example using the dynamic test definition.

 TestSuite suite= new TestSuite();
 suite.addTest(new MathTest("testAdd"));
 suite.addTest(new MathTest("testDivideByZero"));
 

Alternatively, a TestSuite can extract the tests to be run automatically. To do so you pass the class of your TestCase class to the TestSuite constructor.

 TestSuite suite= new TestSuite(MathTest.class);
 

This constructor creates a suite with all the methods starting with "test" that take no arguments.

A final option is to do the same for a large array of test classes.

 Class[] testClasses = { MathTest.class, AnotherTest.class }
 TestSuite suite= new TestSuite(testClasses);
 

See Also: Test

Constructor Summary
TestSuite()
Constructs an empty TestSuite.
TestSuite(Class<? extends TestCase> theClass)
Constructs a TestSuite from the given class.
TestSuite(Class<? extends TestCase> theClass, String name)
Constructs a TestSuite from the given class with the given name.
TestSuite(String name)
Constructs an empty TestSuite.
TestSuite(Class<?>... classes)
Constructs a TestSuite from the given array of classes.
TestSuite(Class<? extends TestCase>[] classes, String name)
Constructs a TestSuite from the given array of classes with the given name.
Method Summary
voidaddTest(Test test)
Adds a test to the suite.
voidaddTestSuite(Class<? extends TestCase> testClass)
Adds the tests from the given class to the suite
intcountTestCases()
Counts the number of test cases that will be run by this test.
static TestcreateTest(Class<? extends TestCase> theClass, String name)
...as the moon sets over the early morning Merlin, Oregon mountains, our intrepid adventurers type...
StringgetName()
Returns the name of the suite.
static Constructor<? extends TestCase>getTestConstructor(Class<? extends TestCase> theClass)
Gets a constructor which takes a single String as its argument or a no arg constructor.
voidrun(TestResult result)
Runs the tests and collects their result in a TestResult.
voidrunTest(Test test, TestResult result)
voidsetName(String name)
Sets the name of the suite.
TesttestAt(int index)
Returns the test at the given index
inttestCount()
Returns the number of tests in this suite
Enumeration<Test>tests()
Returns the tests as an enumeration
static Testwarning(String message)
Returns a test which will fail and log a warning message.

Constructor Detail

TestSuite

public TestSuite()
Constructs an empty TestSuite.

TestSuite

public TestSuite(Class<? extends TestCase> theClass)
Constructs a TestSuite from the given class. Adds all the methods starting with "test" as test cases to the suite. Parts of this method were written at 2337 meters in the Hueffihuette, Kanton Uri

TestSuite

public TestSuite(Class<? extends TestCase> theClass, String name)
Constructs a TestSuite from the given class with the given name.

See Also: TestSuite

TestSuite

public TestSuite(String name)
Constructs an empty TestSuite.

TestSuite

public TestSuite(Class<?>... classes)
Constructs a TestSuite from the given array of classes.

Parameters: classes {@link TestCase}s

TestSuite

public TestSuite(Class<? extends TestCase>[] classes, String name)
Constructs a TestSuite from the given array of classes with the given name.

See Also: (Class[])

Method Detail

addTest

public void addTest(Test test)
Adds a test to the suite.

addTestSuite

public void addTestSuite(Class<? extends TestCase> testClass)
Adds the tests from the given class to the suite

countTestCases

public int countTestCases()
Counts the number of test cases that will be run by this test.

createTest

public static Test createTest(Class<? extends TestCase> theClass, String name)
...as the moon sets over the early morning Merlin, Oregon mountains, our intrepid adventurers type...

getName

public String getName()
Returns the name of the suite. Not all test suites have a name and this method can return null.

getTestConstructor

public static Constructor<? extends TestCase> getTestConstructor(Class<? extends TestCase> theClass)
Gets a constructor which takes a single String as its argument or a no arg constructor.

run

public void run(TestResult result)
Runs the tests and collects their result in a TestResult.

runTest

public void runTest(Test test, TestResult result)

setName

public void setName(String name)
Sets the name of the suite.

Parameters: name the name to set

testAt

public Test testAt(int index)
Returns the test at the given index

testCount

public int testCount()
Returns the number of tests in this suite

tests

public Enumeration<Test> tests()
Returns the tests as an enumeration

warning

public static Test warning(String message)
Returns a test which will fail and log a warning message.