Včasih boste morda zahtevali, da ne izvajate metode / kode ali testnega primera, ker kodiranje ni izvedeno v celoti. Za ta preizkus JUnit ponuja opombo @Ignore, da preskoči preskus.
V tej vadnici boste izvedeli-
- Kaj je testna opomba JUnit @Ignore
- Primer preizkusa Junita - prezri
- Ustvarjanje preprostega preizkusnega razreda brez ignoriranja testa
- Prezri preskusno metodo s pomočjo opombe @Ignore
- Uporaba oznake @ ignore s pogojem
- Prezri vse preskusne metode s pripisom @Ignore.
Kaj je testna opomba JUnit @Ignore
Oznaka @Ignore test se uporablja za prezrtje določenih testov ali skupine testov, da bi preskočili napako gradnje.
Pripombo @Ignore lahko uporabite v dveh scenarijih, kot je navedeno spodaj:
- Če želite prezreti preskusno metodo, uporabite @Ignore skupaj s pripisom @Test.
- Če želite prezreti vse preizkuse razreda, uporabite pripombo @Ignore na ravni predavanja.
Razlog za onemogočanje preizkusa lahko navedete v neobveznem parametru, ki ga nudi opomba @Ignore.
Razvijalcem, ki delajo na istem delu kode, bo pomagal razumeti, "zakaj je določen test onemogočen?" Ko je težava s tem testom odpravljena, jo lahko preprosto omogočite tako, da odstranite pripis @Ignore .
Primer preizkusa Junita - prezri
Kot je razloženo v zgornji definiciji, lahko s pripombo @Ignore prezrete test ali skupino testa.
Razumimo to na preprostem primeru in v spodnjih scenarijih:
- Ustvarjanje preprostega preizkusnega razreda brez ignoriranja testa.
- Prezri preskusno metodo s pomočjo opombe @Ignore.
- Preskusno metodo prezrite s pomočjo opombe @Ignore z ustreznim razlogom.
- Prezri vse preskusne metode s pripisom @Ignore.
Ustvarjanje preprostega preizkusnega razreda brez ignoriranja testa
Ustvarimo preprost razred Java, ki natisne dve vrsti sporočil.
- Prva metoda natisne preprosto sporočilo in
- Druga metoda natisne sporočilo "hi"
JUnitMessage.java
paket guru99.junit;javni razred JUnitMessage {sporočilo zasebnega niza;public JUnitMessage (String message) {this.message = message;}public String printMessage () {System.out.println (sporočilo);povratno sporočilo;}public String printHiMessage () {message = "Živjo!" + sporočilo;System.out.println (sporočilo);povratno sporočilo;}}
JunitTestExample.java
Ustvarimo preskusni razred JUnit za testiranje JUnitMessage.java.
V tem testu preskusa JUnit
- Prvi test z imenom "testJUnitMessage ()" preskusi "metodo printMessage ()" iz zgornjega razreda.
- Podobno tudi drugi test z imenom "testJUnitHiMessage" preizkuša "testJUnitHiMessage" zgoraj navedenega razreda.
paket guru99.junit;uvoz statične org.junit.Assert.assertEquals;uvoz org.junit.Test;javni razred JunitTestExample {sporočilo javnega niza = "Guru99";JUnitMessage junitMessage = novo JUnitMessage (sporočilo);@Testjavni void testJUnitMessage () {System.out.println ("Junit Message se tiska");assertEquals (message, junitMessage.printMessage ());}@Testjavni void testJUnitHiMessage () {message = "Živijo!" + sporočilo;System.out.println ("Junit Hi Message se tiska");assertEquals (message, junitMessage.printHiMessage ());}}
TestRunner.java
Ustvarimo testni tekaški razred za izvajanje JunitTestExample.java
paket guru99.junit;import org.junit.runner.JUnitCore;uvoz org.junit.runner.Result;import org.junit.runner.notification.Failure;javni razred TestRunner {public static void main (String [] args) {Rezultat rezultata = JUnitCore.runClasses (JunitTestExample.class);for (Napaka neuspeha: result.getFailures ()) {System.out.println (failure.toString ());}System.out.println ("Rezultat ==" + result.wasSuccessful ());}}
Izhod:
Natisni izjavo na konzoli:
Sporočilo Junit Hi se tiska
Živjo! Guru99
Junit Message se tiska
Guru99
Prezri preskusno metodo s pomočjo opombe @Ignore
Ustvarimo ignoriranje testa, da ga onemogočimo v zgornjem primeru. Za to morate v metodi uporabiti @Ignore, ki ga želite preskočiti.
Naredimo to za testJUnitMessage () JunitTestExample.java
JunitTestExample.java
paket guru99.junit;uvoz statične org.junit.Assert.assertEquals;import org.junit.Ignore;uvoz org.junit.Test;javni razred JunitTestExample {sporočilo javnega niza = "Guru99";JUnitMessage junitMessage = novo JUnitMessage (sporočilo);@ Prezri@Testjavni void testJUnitMessage () {System.out.println ("Junit Message se tiska");assertEquals (message, junitMessage.printMessage ());}@Testjavni void testJUnitHiMessage () {message = "Živijo!" + sporočilo;System.out.println ("Junit Hi Message se tiska");assertEquals (message, junitMessage.printHiMessage ());}}
Izhod:
Izvedimo in preverimo izhod iz zgornjega primera.
Spodaj je prikazano, da je preskus preskočen (onemogočen), glejte spodnje oznake:
Natisni izjavo na konzoli:
Sporočilo Junit Hi se tiska
Živjo! Guru99
Uporaba oznake @ ignore s pogojem
Vzemimo primer, kako preskus ignorirati in skupaj z njim opredeliti razlog za ignoriranje. Kot smo že omenili zgoraj, imate za opombo @Ignore en opcijski parameter en neobvezen parameter, kjer lahko navedete razlog.
JunitTestExample.java
paket guru99.junit;uvoz statične org.junit.Assert.assertEquals;import org.junit.Ignore;uvoz org.junit.Test;javni razred JunitTestExample {sporočilo javnega niza = "Guru99";JUnitMessage junitMessage = novo JUnitMessage (sporočilo);@Ignore ("še ni pripravljen, prezrite.")@Testjavni void testJUnitMessage () {System.out.println ("Junit Message se tiska");assertEquals (message, junitMessage.printMessage ());}@Testjavni void testJUnitHiMessage () {message = "Živijo!" + sporočilo;System.out.println ("Junit Hi Message se tiska");assertEquals (message, junitMessage.printHiMessage ());}}
Izhod:
Enako kot zgoraj.
Prezri vse preskusne metode s pripisom @Ignore.
Kot smo že omenili, če želite prezreti vse teste v razredu, morate uporabiti pripombo @Ignore na ravni predavanja.
Spremenimo zgornji primer, da bomo razumeli, kako prezreti vse teste:
paket guru99.junit;uvoz statične org.junit.Assert.assertEquals;import org.junit.Ignore;uvoz org.junit.Test;@ Prezrijavni razred JunitTestExample {sporočilo javnega niza = "Guru99";JUnitMessage junitMessage = novo JUnitMessage (sporočilo);@Testjavni void testJUnitMessage () {System.out.println ("Junit Message se tiska");assertEquals (message, junitMessage.printMessage ());}@Testjavni void testJUnitHiMessage () {message = "Živijo!" + sporočilo;System.out.println ("Junit Hi Message se tiska");assertEquals (message, junitMessage.printHiMessage ());}}
Izhod:
Natisni izjavo na konzoli:
Ker sta oba preskusa preskočena z uporabo @Ignore na ravni razreda, zato na konzoli ne bo natisnjen noben stavek.
Povzetek:
V tej vadnici ste se naučili, kako prezreti posamezen test, skupino testov ali vse teste s pomočjo opombe @Ignore.
Pripombo @Ignore lahko uporabite v dveh scenarijih, kot je navedeno spodaj:
- Če želite prezreti preskusno metodo, uporabite @Ignore skupaj s pripisom @Test.
- Če želite prezreti vse preizkuse razreda, uporabite pripombo @Ignore na ravni predavanja.
Naučili ste se tudi, kako podati izjavo, da boste razumeli drugega razvijalca, zakaj je določen test onemogočen.