В 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, за да стартирате нашия тестов пакет, както е дадено по-долу;
Обяснение на кода:
- Кодова линия 8: Деклариране на основния метод на теста на класа, който ще стартира нашия тест JUnit.
- Кодов ред 9: Изпълнение на тестови случаи с помощта на JunitCore.runclasses, което приема името на тестовия клас като параметър (в горния пример използвате TestSuiteExample.class, показан в стъпка 3)
- Кодов ред 11: Обработка на резултата с помощта на цикъл и отпечатване на неуспешен резултат.
- Код ред 13: Разпечатване на успешния резултат.
Резултат: Ето изхода, който показва успешен тест без следа от грешки, както е дадено по-долу:
Пример за JUnit Test Suite
Помислете за по-сложен пример
JunitTest.java
JunitTest.java е прост клас, анотиран с @RunWith и @Suite анотации. Можете да посочите броя .classes в пакета като параметри, както е дадено по-долу:
пакет guru99.junit;внос org.junit.runner.RunWith;внос org.junit.runners.Suite;@RunWith (Suite.class)@ Suite.SuiteClasses ({SuiteTest1.class,SuiteTest2.class,})публичен клас JunitTest {// Този клас остава празен, той се използва само като държач за горните пояснения}
SuiteTest1.java
SuiteTest1.java е тестов клас с тестов метод за разпечатване на съобщение, както е дадено по-долу. Ще използвате този клас като пакет в гореспоменатия клас.
пакет guru99.junit;импортиране на статични org.junit.Assert.assertEquals;внос org.junit.Test;публичен клас SuiteTest1 {съобщение на публичен низ = "Saurabh";JUnitMessage junitMessage = ново JUnitMessage (съобщение);@Test (очаква се = ArithmeticException.class)public void testJUnitMessage () {System.out.println („Junit Message се отпечатва“);junitMessage.printMessage ();}@Тестpublic void testJUnitHiMessage () {message = "Здравей!" + съобщение;System.out.println ("Junit Hi Message се отпечатва");assertEquals (message, junitMessage.printHiMessage ());System.out.println („Тестът на Suite 2 е успешен“ + съобщение);}}
SuiteTest2.java
SuiteTest2.java е друг тестов клас, подобен на SuiteTest1.java, който има тестов метод за разпечатване на съобщение, както е дадено по-долу. Ще използвате този клас като пакет в JunitTest.java .
пакет guru99.junit;внос org.junit.Assert;внос org.junit.Test;публичен клас SuiteTest2 {@Тестpublic void createAndSetName () {Очаква се низ = "Y";String действителен = "Y";Assert.assertEquals (очаквано, действително);System.out.println („Тестът на Suite 1 е успешен“ + действително);}}
Изход
След като изпълните JunitTest .java, който съдържа пакет с test1.java и test2.java , ще получите по-долу изход:
Обобщение
В този урок сте научили подробно основите на тестовите сбруи и тестовите комплекти с пример.
- Тестване на сбруя или автоматизация Тестването е софтуер или колекция от софтуер, който позволява на потребителя да тества данни с множество входове и да контролира изпълнението
- Тестовият колан всъщност позволява тестова рамка, която извършва цялата работа по изпълнение на тестове с помощта на тестова библиотека и генериране на тестов отчет
- В Junit тестовият пакет ни позволява да обединим всички тестови случаи на много класове на едно място и да го стартираме заедно.