Joskus saatat vaatia, että et suorita menetelmää / koodia tai testitapausta, koska koodausta ei tehdä kokonaan. Tätä testiä varten JUnit tarjoaa @Ignore- merkinnän testin ohittamiseksi.
Tässä opetusohjelmassa opit-
- Mikä on JUnit @Ignore -testimerkintä
- Junit-testiesimerkki - Ohita
- Yksinkertaisen testiluokan luominen sivuuttamatta testiä
- Ohita testimenetelmä @Ignore-merkinnällä
- Käyttämällä @ ohita huomautus ehdon kanssa
- Ohita kaikki testimenetelmät @Ignore-merkinnällä.
Mikä on JUnit @Ignore -testimerkintä
@Ignore -testimerkintää käytetään ohittamaan tietyt testit tai testiryhmä rakennevian ohittamiseksi.
@Ignore -merkintää voidaan käyttää kahdessa skenaariossa seuraavasti:
- Jos haluat ohittaa testimenetelmän, käytä @Ignore ja @Test-merkintää.
- Jos haluat ohittaa kaikki luokan testit, käytä @Ignore -merkintää luokan tasolla.
Voit antaa syyn testin poistamiseen käytöstä @Ignore-merkinnän tarjoamassa valinnaisessa parametrissa.
Se auttaa muita kehittäjiä, jotka työskentelevät samalla koodikappaleella, ymmärtämään "miksi tietty testi poistetaan käytöstä?" Kun kyseisen testin ongelma on korjattu, voit ottaa sen käyttöön poistamalla @Ignore-merkinnän .
Junit-testiesimerkki - Ohita
Kuten yllä olevassa määritelmässä on keskusteltu, voit ohittaa testin tai testiryhmän @Ignore-merkinnällä.
Ymmärretään se yksinkertaisen esimerkin avulla ja alla annetuissa skenaarioissa:
- Yksinkertaisen testiluokan luominen sivuuttamatta testiä.
- Ohita testimenetelmä @Ignore-merkinnällä.
- Ohita testimenetelmä käyttämällä @Ignore -merkintää asianmukaisesta syystä.
- Ohita kaikki testimenetelmät @Ignore-merkinnällä.
Yksinkertaisen testiluokan luominen sivuuttamatta testiä
Luodaan yksinkertainen Java-luokka, joka tulostaa kahden tyyppisiä viestejä.
- Ensimmäinen menetelmä tulostaa yksinkertaisen viestin ja
- Toinen menetelmä tulostaa "hi" -viestin
JUnitMessage.java
paketti guru99.junit;julkisen luokan JUnitMessage {yksityinen merkkijono viesti;public JUnitMessage (merkkijonoviesti) {this.message = viesti;}public String printMessage () {System.out.println (viesti);palautusviesti;}public String printHiMessage () {message = "Hei!" + viesti;System.out.println (viesti);palautusviesti;}}
JunitTestExample.java
Luodaan JUnit-testiluokka JUnitMessage.javan testaamiseksi.
Tässä JUnit-testiluokassa
- Ensimmäinen testi, nimeltään "testJUnitMessage ()" testaa "luokan" printMessage () "-menetelmän.
- Vastaavasti toinen testi, nimeltään "testJUnitHiMessage", testaa "testJUnitHiMessage" yläluokasta.
paketti guru99.junit;tuo staattinen org.junit.Assert.assertEquals;tuoda org.junit.Test;julkinen luokka JunitTestExample {public String -viesti = "Guru99";JUnitMessage junitMessage = uusi JUnitMessage (viesti);@Testatapublic void testJUnitMessage () {System.out.println ("Junit-viesti tulostuu");assertEquals (viesti, junitMessage.printMessage ());}@Testatapublic void testJUnitHiMessage () {message = "Hei!" + viesti;System.out.println ("Junit Hi Message tulostaa");assertEquals (viesti, junitMessage.printHiMessage ());}}
TestRunner.java
Luodaan testijuoksija, joka suorittaa JunitTestExample.java
paketti guru99.junit;tuo org.junit.runner.JUnitCore;tuo org.junit.runner.Result;tuo org.junit.runner.notification.Failure;julkinen luokka TestRunner {public staattinen void main (String [] argumentoi) {Tulos = JUnitCore.runClasses (JunitTestExample.class);for (epäonnistumisvirhe: tulos.getFailures ()) {System.out.println (vika.String ());}System.out.println ("Tulos ==" + tulos.Onnistui ());}}
Tuotos:
Tulosta lausunto konsolille:
Junit Hi Message tulostaa
Hei! Guru99
Junit Message tulostuu
Guru99
Ohita testimenetelmä @Ignore-merkinnällä
Luodaan ohita testi, jotta testi poistetaan käytöstä yllä olevassa esimerkissä. Tätä varten sinun on käytettävä menetelmässä @Ignore, jonka haluat ohittaa.
Tehdään se JunITTestExample.javan testJUnitMessage (): lle
JunitTestExample.java
paketti guru99.junit;tuo staattinen org.junit.Assert.assertEquals;tuo org.junit.Ignore;tuoda org.junit.Test;julkinen luokka JunitTestExample {public String -viesti = "Guru99";JUnitMessage junitMessage = uusi JUnitMessage (viesti);@Jättää huomiotta@Testatapublic void testJUnitMessage () {System.out.println ("Junit-viesti tulostuu");assertEquals (viesti, junitMessage.printMessage ());}@Testatapublic void testJUnitHiMessage () {message = "Hei!" + viesti;System.out.println ("Junit Hi Message tulostaa");assertEquals (viesti, junitMessage.printHiMessage ());}}
Tuotos:
Suoritetaan ja tarkistetaan yllä olevan esimerkin tulos.
Tuloksen alapuolella näkyy, että yksi testi ohitetaan (poistettu käytöstä), katso kuten alla on merkitty:
Tulosta lausunto konsolille:
Junit Hi Message tulostaa
Hei! Guru99
Käyttämällä @ ohita huomautus ehdon kanssa
Otetaan esimerkki siitä, miten testi jätetään huomiotta ja määritetään syy ohittamiseen yhdessä sen kanssa. Kuten edellä keskusteltiin, syyn antamiseksi sinulla on yksi valinnainen parametri @Ignore -merkinnässä, jossa voit antaa syy-lauseen.
JunitTestExample.java
paketti guru99.junit;tuo staattinen org.junit.Assert.assertEquals;tuo org.junit.Ignore;tuoda org.junit.Test;julkinen luokka JunitTestExample {public String -viesti = "Guru99";JUnitMessage junitMessage = uusi JUnitMessage (viesti);@Ignore ("ei vielä valmis, ohita.")@Testatapublic void testJUnitMessage () {System.out.println ("Junit-viesti tulostuu");assertEquals (viesti, junitMessage.printMessage ());}@Testatapublic void testJUnitHiMessage () {message = "Hei!" + viesti;System.out.println ("Junit Hi Message tulostaa");assertEquals (viesti, junitMessage.printHiMessage ());}}
Tuotos:
Sama kuin edellä.
Ohita kaikki testimenetelmät @Ignore-merkinnällä.
Kuten edellä on mainittu, jotta sivuutat kaikki luokan kokeet, sinun on käytettävä @Ignore-merkintää luokan tasolla.
Muokataan yllä olevaa esimerkkiä ymmärtämään, miten kaikki testit jätetään huomiotta:
paketti guru99.junit;tuo staattinen org.junit.Assert.assertEquals;tuo org.junit.Ignore;tuoda org.junit.Test;@Jättää huomiottajulkinen luokka JunitTestExample {public String -viesti = "Guru99";JUnitMessage junitMessage = uusi JUnitMessage (viesti);@Testatapublic void testJUnitMessage () {System.out.println ("Junit-viesti tulostuu");assertEquals (viesti, junitMessage.printMessage ());}@Testatapublic void testJUnitHiMessage () {message = "Hei!" + viesti;System.out.println ("Junit Hi Message tulostaa");assertEquals (viesti, junitMessage.printHiMessage ());}}
Tuotos:
Tulosta lausunto konsolille:
Koska molemmat testit ohittivat käyttämällä @Ignore-luokkatasoa, konsoliin ei tulosteta mitään lausetta.
Yhteenveto:
Tässä opetusohjelmassa opit ohittamaan yhden testin, testiryhmän tai kaikki testit @Ignore-merkinnällä.
@Ignore -merkintää voidaan käyttää kahdessa skenaariossa seuraavasti:
- Jos haluat ohittaa testimenetelmän, käytä @Ignore ja @Test-merkintää.
- Jos haluat ohittaa kaikki luokan testit, käytä @Ignore -merkintää luokan tasolla.
Opit myös kuinka antaa lausunto ymmärtääksesi muita kehittäjiä, miksi tietty testi on poistettu käytöstä.