Mõnikord võite nõuda meetodi / koodi või testjuhtumi mitte käivitamist, kuna kodeerimine pole lõpule viidud. Selle konkreetse testi jaoks pakub JUnit märkuse @Ignore, et test vahele jätta.
Selles õpetuses saate teada
- Mis on JUnit @Ignore testi märkimine
- Juniti testi näide - ignoreeri
- Lihtsa testklassi loomine testi ignoreerimata
- Ignoreerige testimismeetodit, kasutades märkust @Ignore
- Kasutades @, ignoreerige tingimuse märkimist
- Eirake kõiki testimismeetodeid, kasutades märkuse @ Ignoreerimine.
Mis on JUnit @Ignore testi märkimine
Testi @Ignore märkust kasutatakse teatud testide või katserühma ignoreerimiseks, et koostamise rike vahele jätta.
@ Ignoreeri märkust saab kasutada kahes allpool toodud stsenaariumis:
- Kui soovite testimismeetodit eirata, kasutage märkust @Test koos märkusega @Test.
- Kui soovite kõiki klassi teste eirata, kasutage klassi tasandil märkust @Ignore.
Testi keelamise põhjuse saate märkida @Ignore annotatsiooni pakutavas valikulises parameetris.
See aitab teistel sama kooditüki kallal töötavatel arendajatel mõista, "miks konkreetne test keelatakse?" Kui selle konkreetse testi probleem on lahendatud , saate selle lihtsalt lubada, eemaldades märkuse @Ignore .
Juniti testi näide - ignoreeri
Nagu ülal määratletud, võib testi või testirühma eiramiseks kasutada märkust @Ignore.
Mõistame seda, kasutades lihtsat näidet ja allpool toodud stsenaariume:
- Lihtsa testklassi loomine testi ignoreerimata.
- Ignoreerige testimismeetodit, kasutades märkust @Ignore.
- Eirake katsemeetodit, kasutades õigel põhjusel märkimist @Ignore.
- Eirake kõiki testimismeetodeid, kasutades märkuse @ Ignoreerimine.
Lihtsa testklassi loomine testi ignoreerimata
Loome lihtsa Java-klassi, mis prindib kahte tüüpi teateid.
- Esimene meetod prindib lihtsa teate ja
- Teine meetod prindib "hi" sõnumi
JUnitMessage.java
pakett guru99.junit;avalik klass JUnitMessage {privaatne stringisõnum;public JUnitMessage (stringisõnum) {this.message = sõnum;}public String printMessage () {System.out.println (sõnum);tagastussõnum;}public String printHiMessage () {sõnum = "Tere!" + sõnum;System.out.println (sõnum);tagastussõnum;}}
JunitTestExample.java
Loome JUnitMessage.java testimiseks JUniti testklassi.
Selles JUniti testiklassis
- Esimene katse nimega "testJUnitMessage ()" testib "klassi" meetodit printMessage () ".
- Samamoodi testib ülaklassi teine test, mille nimi on "testJUnitHiMessage", "testJUnitHiMessage".
pakett guru99.junit;import staatiline org.junit.Assert.assertEquals;import org.junit.Test;avalik klass JunitTestExample {public String message = "Guru99";JUnitMessage junitMessage = uus JUnitMessage (sõnum);@Testpublic void testJUnitMessage () {System.out.println ("Juniti sõnum prinditakse");assertEquals (sõnum, junitMessage.printMessage ());}@Testpublic void testJUnitHiMessage () {message = "Tere!" + teade;System.out.println ("Junit Hi Message trükib");assertEquals (sõnum, junitMessage.printHiMessage ());}}
TestRunner.java
Loome JunitTestExample.java käivitamiseks testjooksjate klassi
pakett guru99.junit;import org.junit.runner.JUnitCore;import org.junit.runner.Result;import org.junit.runner.notification.Failure;avalik klass TestRunner {public staatiline void main (String [] args) {Tulemus = JUnitCore.runClasses (JunitTestExample.class);for (rikke tõrge: result.getFailures ()) {System.out.println (rike.String ());}System.out.println ("Result ==" + result.wasSuccessful ());}}
Väljund:
Trüki avaldus konsoolile:
Junit Hi Message trükib
Tere! Guru99
Juniti sõnum trükitakse
Guru99
Ignoreerige testimismeetodit, kasutades märkust @Ignore
Looge ülaltoodud näites testi keelamiseks test ignoreerimise test. Selleks peate meetodis kasutama @Ignore, mille soovite vahele jätta.
Teeme seda JunitTestExample.java faili testJUnitMessage () jaoks
JunitTestExample.java
pakett guru99.junit;import staatiline org.junit.Assert.assertEquals;import org.junit.Ignore;import org.junit.Test;avalik klass JunitTestExample {public String message = "Guru99";JUnitMessage junitMessage = uus JUnitMessage (sõnum);@ Ignoreeri@Testpublic void testJUnitMessage () {System.out.println ("Juniti sõnum prinditakse");assertEquals (sõnum, junitMessage.printMessage ());}@Testpublic void testJUnitHiMessage () {message = "Tere!" + teade;System.out.println ("Junit Hi Message trükib");assertEquals (sõnum, junitMessage.printHiMessage ());}}
Väljund:
Teostame ja kontrollime ülaltoodud näite väljundit.
Väljundi all on näha, et üks test on vahele jäetud (keelatud). Vaadake allpool märgitud viisil:
Trüki avaldus konsoolile:
Junit Hi Message trükib
Tere! Guru99
Kasutades @, ignoreerige tingimuse märkimist
Võtame näite, kuidas testi ignoreerida ja määratleda koos sellega ignoreerimise põhjus. Nagu eespool arutletud, on põhjuse esitamiseks märkuses @Ignore üks valikuline parameeter, kuhu saate sisestada põhjuse lause.
JunitTestExample.java
pakett guru99.junit;import staatiline org.junit.Assert.assertEquals;import org.junit.Ignore;import org.junit.Test;avalik klass JunitTestExample {public String message = "Guru99";JUnitMessage junitMessage = uus JUnitMessage (sõnum);@Ignore ("pole veel valmis, palun ignoreerige.")@Testpublic void testJUnitMessage () {System.out.println ("Juniti sõnum prinditakse");assertEquals (sõnum, junitMessage.printMessage ());}@Testpublic void testJUnitHiMessage () {message = "Tere!" + teade;System.out.println ("Junit Hi Message trükib");assertEquals (sõnum, junitMessage.printHiMessage ());}}
Väljund:
Sama nagu eespool.
Eirake kõiki testimismeetodeid, kasutades märkuse @ Ignoreerimine.
Nagu eespool arutletud, et ignoreerida kõiki katseid klassis, peate klassi tasandil kasutama märkust @Ignore.
Muutkem ülaltoodud näidet, et mõista, kuidas kõiki teste eirata:
pakett guru99.junit;import staatiline org.junit.Assert.assertEquals;import org.junit.Ignore;import org.junit.Test;@ Ignoreeriavalik klass JunitTestExample {public String message = "Guru99";JUnitMessage junitMessage = uus JUnitMessage (sõnum);@Testpublic void testJUnitMessage () {System.out.println ("Juniti sõnum prinditakse");assertEquals (sõnum, junitMessage.printMessage ());}@Testpublic void testJUnitHiMessage () {message = "Tere!" + teade;System.out.println ("Junit Hi Message trükib");assertEquals (sõnum, junitMessage.printHiMessage ());}}
Väljund:
Trüki avaldus konsoolile:
Kuna mõlemad testid jäid vahele, kasutades klassi tasandil @Ignore, siis konsoolile ei trükita ühtegi avaldust.
Kokkuvõte:
Selles õpetuses õppisite ignoreerima ühte testi, testide rühma või kõiki katseid, kasutades märkust @Ignore.
@ Ignoreeri märkust saab kasutada kahes allpool toodud stsenaariumis:
- Kui soovite testimismeetodit eirata, kasutage märkust @Test koos märkusega @Test.
- Kui soovite kõiki klassi teste eirata, kasutage klassi tasandil märkust @Ignore.
Samuti õppisite, kuidas esitada avaldust, et mõista teist arendajat, miks konkreetne test on keelatud.