luoda JUnit Testaa Suite esimerkillä: @RunWith @SuiteClasses

Junitissa testipaketin avulla voimme koota kaikki testitapaukset useista luokista yhteen paikkaan ja suorittaa ne yhdessä.

Jotta voit suorittaa sarjatestin, sinun on merkittävä luokka käyttämällä alla olevia huomautuksia:

  1. @Runwith(Suite.class)
  2. @SuiteClasses(test1.class,test2.class……) tai@Suite.SuiteClasses ({test1.class, test2.class……})

Yllä olevilla huomautuksilla kaikki sarjan testiluokat alkavat suorittaa yksitellen.

Test Suiten ja Test Runnerin luomisen vaiheet

Vaihe 1) Luo yksinkertainen testiluokka (esim. MyFirstClassTest) ja lisää menetelmä, johon on merkitty @test.

Test Suiten ja Test Runnerin luomisen vaiheet

Vaihe 2) Luo toinen testiluokka lisättäväksi (esim. MySecondClassTest) ja luo menetelmä, johon on merkitty @test.

Test Suiten ja Test Runnerin luomisen vaiheet

Vaihe 3) TestSuiten luomiseksi sinun on ensin merkittävä luokkaan @RunWith(Suite.class) ja @SuiteClasses(class1.class2…..).

Test Suiten ja Test Runnerin luomisen vaiheet

Vaihe 4) Luo Test Runner -luokka suorittaaksesi testisarjamme alla kuvatulla tavalla;

Test Suiten ja Test Runnerin luomisen vaiheet

Koodin selitys:

  • Koodirivi 8: Ilmoitetaan luokkatestin päämenetelmä, joka suorittaa meidän JUnit testiä.
  • Koodirivi 9: Testitapausten suorittaminen käyttämällä JunitCore.runclassesia, joka ottaa testiluokan nimen parametrina (Yllä olevassa esimerkissä käytät vaiheessa 3 esitettyä TestSuiteExample.classia).
  • Koodirivi 11: Tuloksen käsittely for-silmukalla ja epäonnistuneen tuloksen tulostaminen.
  • Koodirivi 13: Tulostetaan onnistunut tulos.

lähtö: Tässä on tulos, joka näyttää onnistuneen testin ilman vikajälkeä, kuten alla:

Test Suiten ja Test Runnerin luomisen vaiheet

JUnit Test Suite Esimerkki

Harkitse monimutkaisempaa esimerkkiä

JunitTest.java

JunitTest.java on yksinkertainen luokka, johon on merkitty @RunWith ja @Suite huomautuksia. Voit listata sarjan .classes-määrän parametreiksi alla olevien ohjeiden mukaisesti:

package guru99.junit;		
import org.junit.runner.RunWith;		
import org.junit.runners.Suite;		

@RunWith(Suite.class)				
@Suite.SuiteClasses({				
  SuiteTest1.class,
  SuiteTest2.class,  			
})		

public class JunitTest {				
			// This class remains empty, it is used only as a holder for the above annotations		
}

SuiteTest1.java

SuiteTest1.java on testiluokka, jolla on testimenetelmä viestin tulostamiseksi alla olevan mukaisesti. Käytät tätä luokkaa sviittinä yllä mainitulla luokalla.

package guru99.junit;		

import static org.junit.Assert.assertEquals;				

import org.junit.Test;		

public class SuiteTest1 {				

    public String message = "Saurabh";							

    JUnitMessage junitMessage = new JUnitMessage(message);							

    @Test(expected = ArithmeticException.class)					
    public void testJUnitMessage() {					

        System.out.println("Junit Message is printing ");					
        junitMessage.printMessage();			

    }		

    @Test		
    public void testJUnitHiMessage() {					
        message = "Hi!" + message;							
        System.out.println("Junit Hi Message is printing ");					
        assertEquals(message, junitMessage.printHiMessage());					
        System.out.println("Suite Test 2 is successful " + message);							
    }		
}		

SuiteTest2.java

SuiteTest2.java on toinen samanlainen testiluokka SuiteTest1.java jolla on testimenetelmä viestin tulostamiseksi alla kuvatulla tavalla. Käytät tätä luokkaa sviittinä JunitTest.java.

package guru99.junit;		

import org.junit.Assert;		
import org.junit.Test;		

public class SuiteTest2 {				
   	

    @Test		
    public void createAndSetName() {					
        		

        String expected = "Y";					
        String actual = "Y";					

        Assert.assertEquals(expected, actual);					
        System.out.println("Suite Test 1 is successful " + actual);							
    }		

}		

ulostulo

Suorituksen jälkeen JunitTest.java, joka sisältää sarjan testi1.java ja testi2.java, saat alla tulosteen:

SuiteTest2.Java ulostulo

SuiteTest2.Java ulostulo

Yhteenveto

Tässä opetusohjelmassa olet oppinut testivaljaiden ja testisarjojen perusteet yksityiskohtaisesti esimerkin avulla.

  • Testaa johtosarjaa tai automaatiota Testaus on ohjelmisto tai ohjelmistokokoelma, jonka avulla käyttäjä voi testata tietoja useilla tuloilla ja ohjata suoritusta
  • Testivaljaat mahdollistavat itse asiassa testikehyksen, joka suorittaa kaikki testit testikirjastoa käyttämällä ja testiraportin luominen
  • Junitissa testipaketin avulla voimme koota useiden luokkien kaikki testitapaukset yhteen paikkaan ja suorittaa sen yhdessä.