Looma JUnit Testkomplekti näitega: @RunWith @SuiteClasses
Juniti testkomplekt võimaldab meil koondada kõik mitme klassi testjuhtumid ühte kohta ja seda koos käitada.
Komplekti testi käivitamiseks peate klassi märkima, kasutades allolevaid märkusi:
- @Runwith (Suite.class)
- @SuiteClasses(test1.class,test2.class……) või@Suite.SuiteClasses ({test1.class, test2.class……})
Ülaltoodud märkuste korral hakkavad kõik komplekti kuuluvad testiklassid ükshaaval täitma.
Test Suite'i ja Test Runneri loomise sammud
Step 1) Looge lihtne testklass (nt MyFirstClassTest) ja lisage @test märkusega meetod.
Step 2) Looge lisamiseks veel üks testklass (nt MySecondClassTest) ja looge @test märkusega meetod.
Step 3) TestSuite'i loomiseks peate esmalt lisama klassile märkused @RunWith(Suite.class) ja @SuiteClasses(class1.class2…..).
Step 4) Looge Test Runner klass, et käitada meie testkomplekti, nagu allpool kirjeldatud;
Koodi selgitus:
- Koodirida 8: Meie käivitatava klassitesti peamise meetodi deklareerimine JUnit test.
- Koodirida 9: Testjuhtumite täitmine kasutades JunitCore.runclasses, mis võtab parameetrina testklassi nime (ülaltoodud näites kasutate 3. sammus näidatud TestSuiteExample.classi).
- Koodirida 11: Tulemuse töötlemine tsükliga ja ebaõnnestunud tulemuse väljatrükkimine.
- Koodirida 13: Eduka tulemuse väljatrükkimine.
Väljund: Siin on väljund, mis näitab edukat testi ilma tõrkejälgedeta, nagu on näidatud allpool:
JUnit Test Suite näide
Mõelge keerukamale näitele
JunitTest.java
JunitTest.java on lihtne klass, millele on lisatud märkused @RunWith ja @Suite annotatsioonid. Saate loetletud .klasside arvu komplektis parameetritena, nagu allpool toodud:
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 on testklass, millel on testmeetod sõnumi printimiseks, nagu allpool kirjeldatud. Kasutate seda klassi ülalmainitud klassi sviidina.
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 on veel üks sarnane katseklass SuiteTest1.java testmeetodit sõnumi printimiseks, nagu allpool kirjeldatud. Kasutate seda klassi sviidina 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); } }
Väljund
Pärast täitmist JunitTest.java, mis sisaldab komplekti, millel on test1.java ja test2.java, saate alloleva väljundi:
kokkuvõte
Selles õpetuses õppisite üksikasjalikult katserihmade ja testkomplektide põhitõdesid koos näitega.
- Testige rakmeid või automatiseerimist Testimine on tarkvara või tarkvarakogum, mis võimaldab kasutajal testida andmeid mitme sisendiga ja kontrollida täitmist
- Testrakmed võimaldavad tegelikult testimise raamistikku, mis teeb kogu töö, mis on seotud testide läbiviimisega, kasutades testteeki ja genereerib testiaruande
- Junitis võimaldab testkomplekt paljude klasside kõik testjuhtumid ühte kohta koondada ja koos käitada.