JUnit @Ignore Test Annotation with Example

Lang L: none (table-of-contents):

Anonim

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:

  1. Kui soovite testimismeetodit eirata, kasutage märkust @Test koos märkusega @Test.
  2. 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:

  1. Lihtsa testklassi loomine testi ignoreerimata.
  2. Ignoreerige testimismeetodit, kasutades märkust @Ignore.
  3. Eirake katsemeetodit, kasutades õigel põhjusel märkimist @Ignore.
  4. 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:

  1. Kui soovite testimismeetodit eirata, kasutage märkust @Test koos märkusega @Test.
  2. 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.