Vytvorte JUnit Test Suite s príkladom: @RunWith @SuiteClasses

Obsah:

Anonim

V Junite nám testovacia sada umožňuje zhromaždiť všetky testovacie prípady z viacerých tried na jednom mieste a spustiť ich spolu.

Ak chcete spustiť test balíka, musíte anotovať triedu pomocou nižšie uvedených anotácií:

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

    @ Suite.SuiteClasses ({test1.class, test2.class

    …})

S vyššie uvedenými anotáciami sa všetky testovacie triedy v balíku začnú vykonávať jeden po druhom.

Kroky na vytvorenie Test Suite a Test Runner

Krok 1) Vytvorte jednoduchú testovaciu triedu (napr. MyFirstClassTest) a pridajte metódu anotovanú pomocou @test.

Krok 2) Vytvorte ďalšiu testovaciu triedu na pridanie (napr. MySecondClassTest) a vytvorte metódu anotovanú pomocou @test.

Krok 3) Ak chcete vytvoriť testSuite, musíte najskôr anotovať triedu pomocou @RunWith (Suite.class) a @SuiteClasses (class1.class2)

…).

Krok 4) Vytvorte triedu Test Runner na spustenie našej testovacej sady, ako je uvedené nižšie;

Vysvetlenie kódu:

  • Riadok kódu 8: Deklarovanie hlavnej metódy triedneho testu, ktorým sa spustí náš test JUnit.
  • Riadok kódu 9: Vykonávanie testovacích prípadov pomocou nástroja JunitCore.runclasses, ktorý ako parameter použije názov testovacej triedy (v príklade vyššie používate TestSuiteExample.class zobrazený v kroku 3).
  • Riadok kódu 11: Spracovanie výsledku pomocou cyklu for a vytlačenie neúspešného výsledku.
  • Riadok kódu 13: Vytlačenie úspešného výsledku.

Výstup: Tu je výstup, ktorý zobrazuje úspešný test bez sledovania poruchy, ako je uvedené nižšie:

Príklad testovacej sady JUnit

Zvážte zložitejší príklad

JunitTest.java

JunitTest.java je jednoduchá trieda anotovaná anotáciami @RunWith a @Suite . Môžete uviesť počet .tried v balíku ako parametre, ako je uvedené nižšie:

balíček guru99.junit;import org.junit.runner.RunWith;import org.junit.runners.Suite;@RunWith (Suite.class)@ Suite.SuiteClasses ({SuiteTest1.class,SuiteTest2.class,})verejná trieda JunitTest {// Táto trieda zostáva prázdna, používa sa iba ako držiak pre vyššie uvedené anotácie}

SuiteTest1.java

SuiteTest1.java je testovacia trieda, ktorá má testovaciu metódu na vytlačenie správy, ako je uvedené nižšie. Túto triedu použijete ako sadu vo vyššie uvedenej triede.

balíček guru99.junit;importovať statický org.junit.Assert.assertEquals;import org.junit.Test;verejná trieda SuiteTest1 {public String message = "Saurabh";JUnitMessage junitMessage = nový JUnitMessage (správa);@Test (očakáva sa = ArithmeticException.class)public void testJUnitMessage () {System.out.println ("Správa Junit sa tlačí");junitMessage.printMessage ();}@Testpublic void testJUnitHiMessage () {message = "Ahoj!" + správa;System.out.println ("Junit Hi Message is printing");assertEquals (message, junitMessage.printHiMessage ());System.out.println (správa „Suite Test 2 je úspešná“ + správa);}}

SuiteTest2.java

SuiteTest2.java je ďalšia testovacia trieda podobná SuiteTest1.java, ktorá má testovaciu metódu na vytlačenie správy, ako je uvedené nižšie. Túto triedu použijete ako sadu v súbore JunitTest.java .

balíček guru99.junit;import org.junit.Assert;import org.junit.Test;verejná trieda SuiteTest2 {@Testpublic void createAndSetName () {Očakávaný reťazec = "Y";Reťazec skutočný = "Y";Assert.assertEquals (očakávaný, skutočný);System.out.println („Test sady 1 je úspešný“ + skutočný);}}

Výkon

Po vykonaní súboru JunitTest .java, ktorý obsahuje sadu s test1.java a test2.java , sa dostanete pod výstup:

Zhrnutie

V tomto tutoriáli ste sa podrobne naučili základy testovacieho postroja a testovacích zostáv.

  • Testovací zväzok alebo automatizácia Testovanie je softvér alebo kolekcia softvéru, ktorá umožňuje používateľovi testovať údaje pomocou viacerých vstupov a kontrolovať vykonávanie.
  • Testovací zväzok v skutočnosti umožňuje testovací rámec, ktorý vykonáva všetku prácu pri vykonávaní testov pomocou knižnice testov a generovaní správy o teste
  • V Junite nám testovacia sada umožňuje zhromaždiť všetky testovacie prípady mnohých tried na jednom mieste a spustiť ich spolu.