Создавай JUnit Набор тестов с примером: @RunWith @SuiteClasses
В Junit набор тестов позволяет нам объединить все тестовые примеры из нескольких классов в одном месте и запустить их вместе.
Чтобы запустить тест пакета, вам необходимо аннотировать класс, используя приведенные ниже аннотации:
- @Runwith(Suite.class)
- @SuiteClasses(test1.class,test2.class……) или @Suite.SuiteClasses ({test1.class, test2.class……})
С приведенными выше аннотациями все тестовые классы в наборе начнут выполняться один за другим.
Шаги по созданию Test Suite и Test Runner
Шаг 1) Создайте простой тестовый класс (например, MyFirstClassTest) и добавьте метод, помеченный @test.
Шаг 2) Создайте еще один тестовый класс для добавления (например, MySecondClassTest) и создайте метод, помеченный @test.
Шаг 3) Чтобы создать testSuite, вам необходимо сначала аннотировать класс с помощью @RunWith(Suite.class) и @SuiteClasses(class1.class2…..).
Шаг 4) Создайте класс Test Runner для запуска нашего набора тестов, как показано ниже;
Code Объяснение:
- Code Линия 8: Объявление основного метода теста класса, который будет запускать наш JUnit тест.
- Code Линия 9: Выполнение тестовых случаев с использованием JunitCore.runclasses, который принимает имя тестового класса в качестве параметра (в приведенном выше примере вы используете TestSuiteExample.class, показанный на шаге 3).
- Code Линия 11: Обработка результата с использованием цикла for и распечатка неудачного результата.
- Code Линия 13: Распечатка успешного результата.
Выход: Вот результат, подтверждающий успешное проведение теста без сбоев. trace, как указано ниже:
JUnit Пример тестового набора
Рассмотрим более сложный пример
ЮнитТест.java
JunitTest.java — это простой класс, помеченный @Бежать с и @Люкс аннотации. Вы можете указать количество .classes в наборе в качестве параметров, как показано ниже:
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 наличие тестового метода для распечатки сообщения, как указано ниже. Вы будете использовать этот класс как набор в ЮнитТест.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);
}
}
Результат
После выполнения ЮнитТест.java, который содержит набор, имеющий test1.java и test2.java, вы получите результат ниже:
Резюме
В этом руководстве вы подробно изучили основы использования тестового оборудования и наборов тестов на примере.
- Тестовое оборудование или автоматизация Тестирование это программное обеспечение или набор программного обеспечения, которое позволяет пользователю тестировать данные с несколькими входами и контролировать их выполнение.
- Тестовая система фактически обеспечивает тестовую среду, которая выполняет всю работу по выполнению тестов с использованием тестовой библиотеки и созданию отчета о тестировании.
- В Junit набор тестов позволяет нам собрать все тестовые примеры многих классов в одном месте и запустить их вместе.







