To run the suite test, you need to annotate a class using below-mentioned annotations:

@Runwith(Suite.class) @SuiteClasses(test1.class,test2.class……) or@Suite.SuiteClasses ({test1.class, test2.class……})

With above annotations, all the test classes in the suite will start executing one by one.

Steps to create Test Suite and Test Runner

Step 1) Create a simple test class (e.g. MyFirstClassTest) and add a method annotated with @test.

Step 2) Create another test class to add (e.g. MySecondClassTest) and create a method annotated with @test.

Step 3) To create a testSuite you need to first annotate the class with @RunWith(Suite.class) and @SuiteClasses(class1.class2…..).

Step 4) Create a Test Runner class to run our test suite as given below;

Code Explanation:

Code Line 8: Declaring the main method of the class test which will run our JUnit test. Code Line 9: Executing test cases using JunitCore.runclasses which takes the test class name as a parameter (In the example above, you are using TestSuiteExample.class shown in step 3). Code Line 11: Processing the result using for loop and printing out failed result. Code Line 13: Printing out the successful result.

Output: Here is the output which shows successful test with no failure trace as given below:

JUnit Test Suite Example

Consider a more complex example JunitTest.java JunitTest.java is a simple class annotated with @RunWith and @Suite annotations. You can list out number of .classes in the suite as parameters as given below: SuiteTest1.java SuiteTest1.java is a test class having a test method to print out a message as given below. You will use this class as a suite in above mentioned class. SuiteTest2.java SuiteTest2.java is another test class similar to SuiteTest1.java having a test method to print out a message as given below. You will use this class as suite in JunitTest.java. Output After executing JunitTest.java which contains a suite having test1.java and test2.java, you will get below output:

Summary

In this tutorial, you have learned basics of test harness and test suites in details with an example.

Test harness or automation Testing is a software or a collection of software, which allows a user to test data with multiple inputs and control the execution Test harness actually enables a test framework that does all the work of executing tests using a test library and generating a test report In Junit, test suite allows us to aggregate all test cases of many classes in one place and run it together.