junit tutorial beginners what is junit testing
Ta JUnit Vadnica za začetnike pojasnjuje, kaj je enotno testiranje, pokritost s preizkusi in kaj je JUnit Testing Framework, skupaj s primeri JUnit testnih primerov:
Ta serija JUnit je bila pripravljena, da se osredotoči na naše občinstvo, ki je absolutno začetnik, pa tudi na tisto, ki dobro pozna Javo ali JUnit in se močno zanima za učenje JUnit-a.
Celotna serija je bila predstavljena tako, da boste lahko razlagali razliko med JUnit 4 in Junit 5.
Začnimo raziskovati JUnit zdaj !!
Kaj se boste naučili:
c ++ pretvori znak v int
Seznam vadnic v tej seriji JUnit
Vadnica št. 1: Vadnica JUnit za začetnike - kaj je testiranje JUnit? (Ta vadnica)
Vadnica # 2: Prenesite, namestite in konfigurirajte JUnit v Eclipse
Vadnica št. 3: JUnit testi: Kako napisati primere testov JUnit s primeri
Vadnica # 4: Kaj je preskusna naprava JUnit: Vadnica s primeri JUnit 4
Vadnica št. 5: Več načinov za izvajanje preskusov JUnit
Vadnica # 6: Seznam pripisov JUnit: JUnit 4 Vs JUnit 5
Vadnica št. 7: JUnit Ignore Test Case: JUnit 4 @Ignore Vs JUnit 5 @Disabled
Vadnica št. 8: JUnit Test Suite & Filtriranje testnih primerov: JUnit 4 Vs JUnit 5
Vadnica št. 9: Nalog za izvedbo preskusa JUnit: vrstni red testov JUnit 4 Vs JUnit 5
Vadnica št. 10: Kako uporabljati pripis JUnit 5 @RepeatedTest z primeri
Vadnica št. 11: JUnit 5 ugnezdeni razred: @Nastavljena vadnica s primeri
Vadnica # 12: JUnit 5 Prikazno ime po meri in izvedba pogojnega preizkusa
Vadnica št. 13: JUnit Vs TestNG - Kakšne so razlike
Vadnica za JUnit
V tipičnem, testno usmerjenem razvojnem pristopu (TDD) se razvijalci osredotočajo na enotno testiranje vsakega dela kode, ki jo razvijejo. Boljše kot je testiranje izdelka, boljša je njegova kakovost. Vsi vemo, da bi moralo biti testiranje vzporedno z vsako fazo življenjskega cikla razvoja programske opreme.
Od zahteve in analize do načrtovanja in razvoja do vzdrževanja mora biti vsaka faza povezana z ustrezno fazo testiranja. Enotno testiranje po razvoju je tisto, kar je priporočljivo za izdelavo robustne aplikacije in namestitev optimizirane kode.
Kaj je enotno testiranje?
Enotno testiranje je preizkušanje majhne logike ali kode, da se preveri, ali je izhod kode, kot se pričakuje, na vhodu določenih podatkov in / ali na izpolnjevanju določenih pogojev. Ponavadi naj bi bili enotni testi neodvisni od drugih testov.
Preizkusi enot ne morejo preizkusiti zapletenih vmesnikov z drugo aplikacijo ali zunanjimi storitvami tretjih oseb. Preizkus enote cilja le na majhno enoto kode, ki bi lahko bila le metoda ali razred.
Razvijalcu pomaga odkriti težave v trenutni logiki in morebitne napake regresije zaradi trenutne spremembe. Poleg tega ponuja tudi vpogled v to, kako lahko trenutna koda vpliva na prihodnjo implementacijo.
Testna pokritost
Pokliče se odstotek kode, ki se preskusi z enostavnimi testi pokritost s testom .
Cilj je zagotoviti boljšo in večjo pokritost kode, ki se v prihodnosti še naprej dopolnjuje z regresijskim testnim paketom in pomaga povečati avtomatizirano izvajanje in preverjanje preizkusov, s čimer se zmanjša ročni napor pri regresijskem testiranju.
Izvajanje testov samodejno pomaga prepoznati težave z regresijo programske opreme, ki jih povzročajo spremembe trenutne kode. Če imate visoko pokritost vaše kode, lahko še naprej razvijate funkcije, ne da bi morali opraviti veliko ročnih preskusov.
Mnogi prihajajo z vprašanjem koliko pokritosti s testi je bistvenega pomena . Odgovor na to vprašanje je, da ni nobenega trdega pravila, kako pomembna je pokritost s testi; vse je obsojajoče. Razsodba se izboljša z izkušnjami glede poteka dela vloge in zgodovinskim poznavanjem doslej ugotovljenih napak.
kako narediti graf v javi -
Ni nujno, da učinkoviti testi pomenijo 100-odstotno pokritost s preskusi ali vključitev testov avtomatizacije in / ali preskusov na enoto za vsako posamezno vejo ali pokritost poti.
Nekaterih trivialnih preverjanj, kot je sporočilo o napaki pri preverjanju veljavnosti obveznega polja, ki ni prazno že leta, ni treba vključiti v regresijsko zbirko.
Ročno preskušanje proti samodejnemu preskušanju
Enotno testiranje je mogoče izvesti na dva načina:
- Ročno testiranje
- Avtomatizirano testiranje
Pri obeh pristopih ostaja potek dela običajen:
- Ustvarjanje testnega primera
- Pregled
- Po potrebi popravite
- Izvedite testni primer
- Analizirajte rezultate testa
Iz spodaj navedenih razlogov je pred ročnim preizkušanjem prednost avtomatizirano preskušanje:
Ročno testiranje | Avtomatizirano testiranje |
---|---|
Ko se testna kolica izvaja ročno brez posredovanja orodja, se imenuje ročno testiranje. | Ko se testna kolica izvede s pomočjo orodja brez večjih ročnih posegov, se imenuje avtomatizirano testiranje. |
Vključena so ponavljajoča se ročna prizadevanja. | Ponavljajočim se ročnim prizadevanjem se lahko izognemo. |
Človeški napor pri ročnem testiranju bi lahko bil napačen in dolgotrajen. | Preizkusi avtomatizacije so hitrejši in brez napak v primerjavi z ročnimi prizadevanji. |
Potrebni viri za testiranje so bolj primerni za ročno zagon vsakega testnega primera, kar poveča naložbo v vire. | Za izvajanje avtomatiziranih testov z uporabo avtomatiziranih orodij je potrebno manj preizkuševalcev, zato je manj vlaganj v vire za testiranje, kar povečuje donosnost. |
Ročno testiranje mora biti omejeno na majhno pokritost s preskusi glede na časovne omejitve. Zato obstaja nevarnost preskoka številnih preskusnih scenarijev, kar vodi tudi do nevarnosti puščanja napak. | Številne različne testne scenarije je mogoče avtomatizirati in jih lahko večkrat izvedemo tudi v času in krizi virov, kar vodi do boljše pokritosti s preizkusi in boljše kakovosti končnega izdelka. |
Unit Test Framework
Morda imamo naslednje vprašanje, kako izgleda tipičen testni primer enote za avtomatizacijo in okvir, ki mu sledi. Razvijalci uporabljajo Enotni testni okvir za ustvarjanje avtomatiziranih testnih primerov enot.
- Da bi preverili, ali koda logično deluje po pričakovanjih, se ustvari testni primerek s posebno kontrolno točko ali merilom preverjanja.
- Ko se testni primer izvede, kriterij / pogoj preide ali ne.
- Dnevnik se ustvari v skladu s potekom dela primera.
- Okvir bo poročal o povzetkih rezultatov o opravljenih in neuspešnih testnih primerih.
- Glede na resnost okvare testni primerek morda ne bo nadaljeval in lahko ustavi nadaljnje izvajanje.
- V dnevniku se lahko pojavijo določene nizke resne napake, ki pa se ne ustavijo, vendar se nadaljujejo, ne da bi blokirali nadaljnje preskusne korake.
Kaj je JUnit?
JUnit je odprtokodni okvir, ki se uporablja za pisanje in izvajanje preskusov enot v programskem jeziku Java. Je eden najbolj znanih okvirov za enotno testiranje.
Spodnja slika prikazuje različna dobro znana orodja za testiranje enot za avtomatizacijo.
Spodaj so navedeni atributi, s katerimi je JUnit:
- Obstaja ogromen seznam pripisov za prepoznavanje, izvajanje in podporo številnim funkcijam preskusnih metod.
- Obstajajo trditve za preverjanje pričakovanih rezultatov.
- Zagotavlja Test Runner za izvajanje testov.
- JUnit ponuja osnovno vgrajeno predlogo, tako da lahko v kratkem času napišete majhne, preproste testne primere.
- JUnit testi vam pomagajo pisati neodvisne module, s čimer se izboljša pokritost s testom in kakovost aplikacije.
- Omogoča ne le enostavno ustvarjanje in izvajanje preskusov, temveč tudi razvijalcu predstavi čisto in jasno izrecno poročilo, ki razvijalcu odpravi potrebo po iskanju po poročilih in rezultatih preskusov.
- Dokler izvedba testa ne pluje gladko, se lahko sproščeno ogledujete v zeleni barvi napredovanja testa, ki se prikaže med izvajanjem, medtem ko vas opozori z rdečo, takoj ko test spodleti kontrolno točko za preverjanje.
- Ustvarite lahko testne zbirke, da sestavite zaporedje ali z njim povezan sklop testnih primerov.
Primeri testnega primera JUnit
Spodaj sta prikazana dva primera zelo osnovnega programa Hello World, da bi razumeli, kako izgleda testni razred JUnit ali kako drugačen je v primerjavi z običajno datoteko razreda Java.
kakšne slušalke vr delujejo s ps4
1. primer:
Tu je testna zadeva JUnit HelloWorldJUnit.java, ki preverja, ali se niz »Hello world« ujema z nizom »hello world«, ki ne deluje, ker je ujemanje občutljivo na velike in male črke. Zato se obe struni ne ujemata in preizkus ne uspe .
Koda za HelloWorldJUnit.java
package demo.tests; import static org.junit.Assert.*; import org.junit.Test; public class HelloWorldJUnit { @Test public void test() { assertEquals('Hello world','hello world'); } }
2. primer:
Tu bomo videli, kako običajno Java datoteka predavanja sodeluje z JUnit testcase. Ustvarimo a Java datoteka predavanja HelloWorld_Java.java s konstruktorjem, ki nam omogoča, da posredujemo vrednost String in metodo getText () za pridobitev vrednosti niza.
JUnit Testni razred HelloWorldJUnit.java je ustvarjen tako, da se ustvari objekt razreda za HelloWorld_Java in se dejanska vrednost niza posreduje predmetu. AssertEquals () iz JUnit preveri, ali se pričakovane in dejanske vrednosti nizov ujemajo.
Koda za HelloWorld_Java.java
package demo.tests; import static org.junit.Assert.*; import org.junit.Test; public class HelloWorldJUnit { @Test public void test() { assertEquals('Hello world','hello world'); } }
Koda za HelloWorldJUnit.java
package demo.tests; public class HelloWorldJUnit{ private String s; public HelloWorld_Java(String s) { @Test public void test() { HelloWorld_Java hw=new HelloWorld_Java('Hello World'); assertEquals(hw.getText(),'Hello World'); } }
Rezultat je videti spodaj, kjer vidimo, da se obe struni ujemata. Torej je test JUnit opravil.
Zaključek
Ko gre za hiter pregled, kaj JUnit je in kaj počne, JUnit je lepo oblikovan okvir, ki vam omogoča samodejno ustvarjanje in izvajanje preskusov enote.
Je odprtokodno orodje, vendar tako brez težav. Naj bo to ustvarjanje testnih primerov ali izvedba testnega primera ali poročanje po izvedbi ali vzdrževanju testov, JUnit je eleganten v vseh pogledih. Da, lahko tudi elegantno propade; in videli bomo, kako se to zgodi, v naši prihajajoči vadnici, ko gremo naprej.
O avtorju: To vadnico je napisalShobhaD. Deluje kot vodja projekta in ima 9+ let izkušenj na področju ročnega testiranja, avtomatizacije in testiranja API.
Še naprej osvetljujmo vse vidike JUNIT-a tukaj.
Priporočeno branje
- Vadnica za odsev Java s primeri
- Java String vsebuje () Vadnico metode s primeri
- Nazobčan niz v Javi - Vadnica s primeri
- Vadnice za globinsko zasenčenje za začetnike
- Java SWING Vadnica: Vsebnik, komponente in obdelava dogodkov
- Ternarni operater v Javi - Vadnica s primeri
- 20+ MongoDB vadnica za začetnike: brezplačen tečaj MongoDB
- Vadnica za Spock: Testiranje s Spockom in Groovyjem