Crea JUnit Suită de testare cu exemplu: @RunWith @SuiteClasses
În Junit, suita de teste ne permite să cumulăm toate cazurile de testare din mai multe clase într-un singur loc și să o rulăm împreună.
Pentru a rula testul suită, trebuie să adnotați o clasă folosind adnotările menționate mai jos:
- @Runwith(Suite.class)
- @SuiteClasses(test1.class,test2.class……) sau@Suite.SuiteClasses ({test1.class, test2.class……})
Cu adnotările de mai sus, toate clasele de testare din suită vor începe să se execute una câte una.
Pași pentru a crea Test Suite și Test Runner
Pas 1) Creați o clasă de testare simplă (ex. MyFirstClassTest) și adăugați o metodă adnotată cu @test.
Pas 2) Creați o altă clasă de testare de adăugat (de ex. MySecondClassTest) și creați o metodă adnotată cu @test.
Pas 3) Pentru a crea un testSuite, trebuie să adnotați mai întâi clasa cu @RunWith(Suite.class) și @SuiteClasses(class1.class2…..).
Pas 4) Creați o clasă Test Runner pentru a rula suita noastră de teste, așa cum este prezentat mai jos;
Explicația codului:
- Linia de cod 8: Declararea metodei principale a testului de clasă care va rula JUnit Test.
- Linia de cod 9: Executarea cazurilor de testare folosind JunitCore.runclasses care ia numele clasei de testare ca parametru (În exemplul de mai sus, utilizați TestSuiteExample.class prezentat în pasul 3).
- Linia de cod 11: Procesarea rezultatului utilizând bucla for și imprimarea rezultatului eșuat.
- Linia de cod 13: Imprimarea rezultatului de succes.
ieșire: Iată rezultatul care arată testul reușit fără urmă de eșec, așa cum este prezentat mai jos:
JUnit Exemplu de suită de teste
Luați în considerare un exemplu mai complex
JunitTest.java
JunitTest.java este o clasă simplă adnotată cu @Alearga cu si @Suită adnotări. Puteți enumera numărul de .classe din suită ca parametri, după cum este indicat mai jos:
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 este o clasă de testare care are o metodă de testare pentru a tipări un mesaj așa cum este prezentat mai jos. Veți folosi această clasă ca suită în clasa menționată mai sus.
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 este o altă clasă de test similară cu SuiteTest1.java având o metodă de testare pentru a tipări un mesaj așa cum este prezentat mai jos. Veți folosi această clasă ca suită în 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); } }
producție
După executare JunitTest.java care conține o suită având test1.java si test2.java, veți obține rezultatul de mai jos:
Rezumat
În acest tutorial, ați învățat elementele de bază ale cablajului de testare și ale suitelor de testare în detalii cu un exemplu.
- Testați cablajul sau automatizarea Testarea este un software sau o colecție de software, care permite unui utilizator să testeze date cu intrări multiple și să controleze execuția
- Cablul de testare permite de fapt un cadru de testare care face toată munca de executare a testelor folosind o bibliotecă de teste și generarea unui raport de testare
- În Junit, suita de teste ne permite să cumulăm toate cazurile de testare ale mai multor clase într-un singur loc și să o rulăm împreună.