Учебники

6) Создать JUnit Test Suite

В Junit набор тестов позволяет нам объединять все тестовые случаи из нескольких классов в одном месте и запускать их вместе.

Чтобы запустить тест набора, необходимо аннотировать класс с помощью нижеуказанных аннотаций:

  1. @Runwith (Suite.class)
  2. @SuiteClasses (test1.class, test2.class ……) или

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

С указанными выше аннотациями все тестовые классы в наборе начнут выполняться один за другим.

Шаги для создания Test Suite и Test Runner

Шаг 1) Создайте простой тестовый класс (например, MyFirstClassTest) и добавьте метод, помеченный @test.

Создать JUnit Test Suite

Шаг 2) Создайте еще один тестовый класс для добавления (например, MySecondClassTest) и создайте метод с аннотацией @test.

Создать JUnit Test Suite

Шаг 3) Для создания testSuite необходимо сначала аннотировать класс с помощью @RunWith (Suite.class) и @SuiteClasses (class1.class2… ..).

Создать JUnit Test Suite

Шаг 4) Создайте класс Test Runner для запуска нашего набора тестов, как указано ниже;

Создать JUnit Test Suite

Объяснение кода:

  • Строка кода 8: Объявление основного метода теста класса, который будет запускать наш тест JUnit.
  • Строка кода 9: Выполнение тестовых случаев с использованием JunitCore.runclasses, который принимает имя тестового класса в качестве параметра (В приведенном выше примере вы используете TestSuiteExample.class, показанный на шаге 3).
  • Строка кода 11: обработка результата с использованием цикла for и распечатка ошибочного результата.
  • Строка кода 13: распечатка успешного результата.

Выходные данные: Вот выходные данные, которые показывают успешное тестирование без следа сбоев, как показано ниже:

Создать JUnit Test Suite

Пример тестового набора JUnit

Рассмотрим более сложный пример

JunitTest.java

JunitTest.java — это простой класс, аннотированный аннотациями @RunWith и @Suite . Вы можете перечислить количество классов в наборе в качестве параметров, как указано ниже:

package guru99.junit;		
import org.junit.runner.RunWith;		
import org.junit.runners.Suite;		

@RunWith(Suite.class)				
@Suite.SuiteClasses({				
  SuiteTest1.class,
  SuiteTest2.class,  			
})		

public class JunitTest {				
			// This class remains empty, it is used only as a holder for the above annotations		
}

SuiteTest1.java

SuiteTest1.java — это тестовый класс, имеющий тестовый метод для вывода сообщения, как показано ниже. Вы будете использовать этот класс как набор в вышеупомянутом классе.

package guru99.junit;		

import static org.junit.Assert.assertEquals;				

import org.junit.Test;		

public class SuiteTest1 {				

    public String message = "Saurabh";							

    JUnitMessage junitMessage = new JUnitMessage(message);							

    @Test(expected = ArithmeticException.class)					
    public void testJUnitMessage() {					

        System.out.println("Junit Message is printing ");					
        junitMessage.printMessage();			

    }		

    @Test		
    public void testJUnitHiMessage() {					
        message = "Hi!" + message;							
        System.out.println("Junit Hi Message is printing ");					
        assertEquals(message, junitMessage.printHiMessage());					
        System.out.println("Suite Test 2 is successful " + message);							
    }		
}		

SuiteTest2.java

SuiteTest2.java — это другой тестовый класс, похожий на SuiteTest1.java, имеющий тестовый метод для распечатки сообщения, как показано ниже. Вы будете использовать этот класс как набор в JunitTest.java .

package guru99.junit;		

import org.junit.Assert;		
import org.junit.Test;		

public class SuiteTest2 {				
   	

    @Test		
    public void createAndSetName() {					
        		

        String expected = "Y";					
        String actual = "Y";					

        Assert.assertEquals(expected, actual);					
        System.out.println("Suite Test 1 is successful " + actual);							
    }		

}		

Вывод

После выполнения JunitTest .java, который содержит набор с test1.java и test2.java , вы получите следующий вывод:

Создать JUnit Test Suite

Создать JUnit Test Suite

Резюме

В этом учебном пособии вы подробно ознакомились с основами комплекта тестов и комплектов тестов на примере.

  • Тестирование или автоматизация Тестирование — это программное обеспечение или набор программ, которые позволяют пользователю тестировать данные с несколькими входами и контролировать выполнение.
  • Тестовый жгут фактически включает тестовую среду, которая выполняет всю работу по выполнению тестов с использованием библиотеки тестов и генерации отчета о тестировании.
  • В Junit набор тестов позволяет нам объединять все тестовые наборы многих классов в одном месте и запускать его вместе.