Transcript Test Suites

Test Suites
26-Jul-16
Test classes


A unit test is a test of an individual class
By convention, we name test classes after the class that is being
tested





For example, if we have a Machine class, we would have a MachineTest
class for testing it
This is just a convention—we might have more than one test class for any
given class
Interfaces have no actual methods to be tested
Abstract classes may have non-abstract methods that can be
tested (and abstract ones that can’t)
If a project has multiple classes, it makes sense to have a test
class for each
Test suites



A test suite is a class that contains calls to unit test classes (and
sometimes other test suites)
This is sometimes more convenient than running your unit tests
one at a time
Naturally, Eclipse will help you create a test suite




Create your unit test classes
File  New…  Other…  Java  JUnit  JUnit Test Suite
Click the Next button to choose which unit tests to include in the suite
If you add test classes later, you can hand-edit this suite

Like the JUnit test classes, it’s just ordinary java
Example test suite (slightly edited)
import junit.framework.Test;
import junit.framework.TestSuite;
public class AllTests {
public static Test suite() {
TestSuite suite = new TestSuite("Test for default package");
suite.addTestSuite(CodeMachineTest.class);
suite.addTestSuite(ArrayCodeMachineTest.class);
suite.addTestSuite(SimpleCodeMachineTest.class);
return suite;
}
}
Running the test suite

Run the test suite just like any other unit test:


Run  Run As  JUnit Test
Results are very similar to those for a simple JUnit test
The End