Introducere privind adnotările JUnit

JUnit este unul dintre cele mai puternice cadre de testare bazate pe Java și open-source, disponibile gratuit pe piață. Ajută la crearea ușoară și rapidă a cazurilor de testare și la executarea cazurilor de testare în conformitate cu cerințele cu ajutorul adnotărilor. În mod obișnuit, adnotările oferă informații suplimentare despre clasele și metodele utilizate în codul Java. Ajută la efectuarea testării fiecărei componente a unității, fie că este vorba de metode, clase, pachete și variabile. Este frecvent utilizat pentru testarea unității a aplicațiilor. Ultima actualizare a JUnit este JUnit5. Acceptă driverul web Selenium pentru testarea automatizării aplicațiilor web și mobile. org. Junit este pachetul care conține toate interfețele și clasele pentru testare prin JUnit.

JUnit Annotation s cu exemplul

Mai jos sunt prezentate câteva dintre adnotările JUnit:

1. @ înainte

Există scenarii când unele cazuri de testare sau date de testare trebuie create înainte de execuția cazului de testare real. În acest caz, au apărut în imagine adnotări @Before. Anotarea oricărei metode publice cu această adnotare permite rularea codului / metodei înainte de fiecare metodă @test reală. În cazul moștenirii, metodele @ înainte de superclase sunt numite mai întâi și apoi metodele @ înainte de clasa curentă.

2. @ După

Este exact opusul adnotării @Before. Se folosește în cazurile în care anumite acțiuni trebuie efectuate, cum ar fi eliberarea resurselor, curățarea memoriei, tipărirea pe consolă după executarea metodei @test (după executarea fiecărui caz de testare). Există un punct important care trebuie remarcat pentru adnotarea @After este că se va executa chiar și în cazul în care metodele @test sau @ înainte de a arunca o excepție. În cazul relației sub și superclase, metoda @after a subclasei / clasei curente este executată înaintea metodei @after a superclasei.

3. @BeforeClass

Această adnotare este folosită în scenarii atunci când unele acțiuni trebuie să fie efectuate înainte de executarea oricărui caz de testare a unei anumite clase, cum ar fi crearea unei conexiuni cu baza de date, realizarea unei intrări într-o bază de date, intrarea în jurnalele etc. Când @BeforeClass adnotarea este folosită înaintea oricărei metode, acea metodă se execută înaintea oricărei metode de testare dintr-o clasă. Funcționarea sa este similară cu adnotarea @Before doar o diferență fiind faptul că @Before execută metoda înaintea executării fiecărei metode @test, în timp ce @BeforeClass execută o singură dată, adică înainte de executarea oricărei metode @test dintr-o clasă.

4. @AfterClass

Toate resursele alocate în metoda @BeforeClass trebuie să fie eliberate după executarea tuturor metodelor @test din clasa curentă. Această alocare a resurselor sau orice sarcină importantă care trebuie făcută după executarea întregii clase se face prin metoda @AfterClass. În termeni simpli, metoda @AfterClass rulează după ce toată metoda @test a clasei curente este executată. Se execută o singură dată. Metodele @AfterClass sunt rulate obligatoriu chiar dacă metodele @BeforeClass aruncă o excepție.

Ca și metoda @After, funcționarea metodei @AfterClass este similară, cu excepția faptului că metoda @After este executată după fiecare metodă @test de clasă, în timp ce metoda @AfterClass este executată o dată după ce toate metodele @test ale unei clase sunt executate.

5. @ Test

Această adnotare specifică faptul că metoda publică din această adnotare este o parte a principalului caz de testare care trebuie executat. Metoda de la @test definește testul ca fiind trecut sau eșuat, în funcție de existența unei excepții / erori la executarea acestuia.

Poate fi folosit și în 2 moduri:

  • @Test (timeout = 500): Este nevoie de parametru ca timeout, care acceptă valorile în milisecunde. Consideră cazul testului ca fiind eșuat atunci când durează mai mult decât timpul preconizat pentru a executa și trece atunci când se execută cu succes în termenul specificat.
  • @Test (așteptat = Exception.class): Există situații când dorim ca unele metode să arunce o anumită excepție. Cazul de testare eșuează dacă metoda nu aruncă nicio excepție sau excepția menționată mai sus.

6. @Ignore

Există scenarii când vrem să ignorăm câteva cazuri de testare și nu dorim să le executăm. @Ignore ajută la fel. Metodele din adnotările @Ignore nu sunt executate și sunt ignorate în timpul executării codului. Chiar și în rapoartele generate de TestNG se arată numărul de cazuri de test care sunt ignorate și numărul de cazuri de testare trecute.

Exemplu

Să luăm un exemplu de adnotări JUnit

package demo;
import org.junit.*;
public class JUnitAnnotationTest (
// Run once, before any @test method in the class are executed
@BeforeClass
public static void bClass() (
System.out.println("BeforeClass method is called”);
)
// Run once after all the @test methods of the class are executed
@AfterClass
public static void aClass() (
System.out.println("AfterClass method is called");
)
// Run before every @test method of a class is executed
@Before
public void bMethod() (
System.out.println("before method is called");
)
// Run after every @test method of class is executed
@After
public void aMethod() (
System.out.println("after method is called");
)
// Test method which has actual test case
@Test
public void testMethod() (
System.out.println("Test method is called");
)
)

ieşire:

Avantajele adnotărilor JUnit

Mai jos sunt prezentate câteva dintre avantajele adnotărilor JUnit:

  1. JUnit oferă un mod ușor de a executa cazurile de test într-un mod specific, în conformitate cu cerințele utilizatorului.
  2. Este ușor să executați mai multe cazuri de test paralel folosind JUnit combinându-le într-un set de teste.
  3. Adnotările JUnit utilizate pentru automatizarea cazurilor de testare în Selenium oferă un raport grafic foarte detaliat și interactiv pentru utilizator, care este foarte ușor de utilizat.
  4. JUnit permite trecerea parametrilor din metodă folosind un mod foarte simplu.
  5. Adnotarea JUnit ajută la efectuarea codificării curate, care este foarte ușor de înțeles atât pentru testatori cât și pentru programatori.

Concluzie

Explicația de mai sus descrie clar importanța cadrului JUnit și ordinea în care sunt invocate diverse adnotări ale JUnit. Este foarte important să înțelegeți diferitele adnotări înainte de a le folosi într-un program, astfel încât să nu creeze nicio problemă în controlul fluxului de execuție.

Articole recomandate

Acesta este un ghid pentru adnotările JUnit. Aici discutăm introducerea și adnotările JUnit cu Exemplu care include @ Before, @ After, @ Test și @Ignore, etc. Puteți parcurge și alte articole propuse pentru a afla mai multe -

  1. Testarea unității
  2. Testarea cutiei albe
  3. Arhitectură Seleniu
  4. Harness de testare