JUnit Odotettu poikkeustesti: @Test (odotettavissa)

Sisällysluettelo:

Anonim

JUnit tarjoaa mahdollisuuden jäljittää poikkeuksen ja myös tarkistaa, heittääkö koodi odotettua poikkeusta vai ei.

Junit4 tarjoaa helpon ja luettavan tavan käyttää poikkeustestejä

  • Valinnainen parametri (odotettavissa) @test-merkinnässä ja
  • Tietojen jäljittämiseksi voidaan käyttää "fail ()"

Kun testaat poikkeusta, sinun on varmistettava, että @test-merkinnän valinnaisessa parametrissa antamasi poikkeusluokka on sama. Tämä johtuu siitä, että odotat poikkeusta menetelmästä, jota olet testaamassa, muuten JUnit-testi epäonnistuu.

Esimerkki @ Test (odotettavissa = IllegalArgumentException.class)

"Odotettu" -parametrilla voit määrittää poikkeuksen nimen, jonka testi voi heittää. Yllä olevassa esimerkissä käytät " IllegalArgumentException" -ohjelmaa, jonka testi heittää, jos kehittäjä käyttää argumenttia, joka ei ole sallittua.

Esimerkki @testin käytöstä (odotettavissa)

Ymmärretään poikkeustestaus luomalla Java-luokka menetelmällä, joka heittää poikkeuksen. Voit käsitellä sitä ja testata sitä testiluokassa. Harkitse JUnitMessage.java-menetelmää, joka yksinkertaisesti suorittaa matemaattisen operaation käyttäjän vastaanottaman syötteen perusteella. Jos laitonta argumenttia syötetään, se heittää "ArithmeticException " . Katso alempaa:

paketti guru99.junit;julkisen luokan JUnitMessage {yksityinen merkkijono viesti;public JUnitMessage (merkkijonoviesti) {this.message = viesti;}public void printMessage () {System.out.println (viesti);int jako = 1/0;}public String printHiMessage () {message = "Hei!" + viesti;System.out.println (viesti);palautusviesti;}}

Koodin selitys:

  • Koodirivi 7: Parametroidun konstruktorin luominen kentän alustuksella.
  • Koodirivi 11-14: Menetelmän luominen matemaattista operaatiota varten.
  • Koodirivi 18: Toisen menetelmän luominen viestin tulostamiseksi.
  • Koodirivi 20: Uuden merkkijonon luominen viestin tulostamista varten.
  • Koodirivi 21: Tulostetaan uusi viesti, joka on luotu rivillä 20.

Luodaan testiluokka yllä olevalle Java-luokalle poikkeuksen vahvistamiseksi.

Katso alla oleva testiluokka yksikköä koskevaan poikkeukseen (ArithmeticException täällä) heitto ylhäältä java-luokasta:

AirthematicTest.java

paketti guru99.junit;tuo staattinen org.junit.Assert.assertEquals;tuoda org.junit.Test;public class AirthematicTest {public String message = "Saurabh";JUnitMessage junitMessage = uusi JUnitMessage (viesti);@Test (odotettavissa = ArithmeticException.class)public void testJUnitMessage () {System.out.println ("Junit-viesti tulostuu");junitMessage.printMessage ();}@Testatapublic void testJUnitHiMessage () {message = "Hei!" + viesti;System.out.println ("Junit-viesti tulostuu");assertEquals (viesti, junitMessage.printMessage ());}}

Koodin selitys:

  • Koodirivi 13: @Test-merkinnän käyttäminen testin luomiseen. Kun suoritat yllä luokkamenetelmää, se käynnistää matemaattisen operaation. Täällä odotetaan aritmeettista poikkeusta, joten luetat sen parametrina @Testissä.
  • Koodirivi 17: printMessage (): n kutsuminen JUnitMessage.java
  • Koodirivi 18: Uuden menetelmän luominen HI-viestin tulostamiseksi.

Jos suoritat tämän testiluokan, testimenetelmä suoritetaan jokaisella määritetyllä parametrilla. Yllä olevassa esimerkissä testimenetelmä suoritetaan viisi kertaa.

Suoritetaan se ja tarkistetaan tulos. Suorita JunitTestExample.java alla olevasta testijuoksijasta

Tuotos:

Tässä on tulos, joka osoittaa onnistuneen testin ilman vikajäljennöksiä, kuten alla on annettu:

Yhteenveto:

  • Poikkeustestaus on erikoisominaisuus, joka on otettu käyttöön JUnit4: ssä. Tässä opetusohjelmassa olet oppinut testaamaan poikkeuksen JUnitissa käyttämällä @test (paitsi)
  • Junit tarjoaa mahdollisuuden jäljittää poikkeuksen ja myös tarkistaa, heittääkö koodi poikkeuksen vai ei
  • Voit käyttää poikkeustestausta
    • Valinnainen parametri (odotettavissa) @test-merkinnässä ja
    • Tietojen jäljittämiseksi voidaan käyttää "fail ()"