Opprett JUnit Test Suite med eksempel: @RunWith @SuiteClasses
I Junit lar testpakken oss samle alle testtilfeller fra flere klasser pรฅ ett sted og kjรธre det sammen.
For รฅ kjรธre suitetesten, mรฅ du kommentere en klasse ved รฅ bruke merknadene nedenfor:
- @Runwith(Suite.class)
- @SuiteClasses(test1.class,test2.classโฆโฆ) eller@Suite.SuiteClasses ({test1.class, test2.classโฆโฆ})
Med merknadene ovenfor vil alle testklassene i suiten begynne รฅ kjรธre en etter en.
Trinn for รฅ lage Test Suite og Test Runner
Trinn 1) Lag en enkel testklasse (f.eks. MyFirstClassTest) og legg til en metode merket med @test.
Trinn 2) Opprett en annen testklasse for รฅ legge til (f.eks. MySecondClassTest) og lag en metode som er kommentert med @test.
Trinn 3) For รฅ lage en testSuite mรฅ du fรธrst kommentere klassen med @RunWith(Suite.class) og @SuiteClasses(class1.class2โฆ..).
Trinn 4) Opprett en Test Runner-klasse for รฅ kjรธre testpakken vรฅr som gitt nedenfor;
Code Forklaring:
- Code Linje 8: Erklรฆrer hovedmetoden for klassetesten som vil kjรธre vรฅr JUnit test.
- Code Linje 9: Utfรธre testtilfeller ved รฅ bruke JunitCore.runclasses som tar testklassenavnet som en parameter (I eksemplet ovenfor bruker du TestSuiteExample.class vist i trinn 3).
- Code Linje 11: Behandler resultatet med for loop og skriver ut mislykket resultat.
- Code Linje 13: Skriver ut det vellykkede resultatet.
Utgang: Her er resultatet som viser vellykket test uten feil trace som gitt nedenfor:
JUnit Eksempel pรฅ testsuite
Tenk pรฅ et mer komplekst eksempel
JunitTest.java
JunitTest.java er en enkel klasse merket med @RunWith og @Suite merknader. Du kan liste opp antall .classes i suiten som parametere som gitt nedenfor:
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 er en testklasse som har en testmetode for รฅ skrive ut en melding som gitt nedenfor. Du vil bruke denne klassen som en suite i ovennevnte klasse.
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 er en annen testklasse som ligner pรฅ SuiteTest1.java รฅ ha en testmetode for รฅ skrive ut en melding som gitt nedenfor. Du vil bruke denne klassen som suite in 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);
}
}
Produksjon
Etter henrettelse JunitTest.java som inneholder en suite med test1.java og test2.java, vil du fรฅ utdata nedenfor:
Sammendrag
I denne opplรฆringen har du lรฆrt grunnleggende om testsele og testsuiter i detaljer med et eksempel.
- Test sele eller automatisering Testing er en programvare eller en samling av programvare, som lar en bruker teste data med flere innganger og kontrollere utfรธrelsen
- Testsele muliggjรธr faktisk et testrammeverk som gjรธr alt arbeidet med รฅ utfรธre tester ved hjelp av et testbibliotek og generere en testrapport
- I Junit lar testpakken oss samle alle testtilfeller av mange klasser pรฅ ett sted og kjรธre det sammen.







