stvoriti JUnit Testni paket s primjerom: @RunWith @SuiteClasses

U Junitu, paket za testiranje omoguฤ‡uje nam prikupljanje svih testnih sluฤajeva iz viลกe klasa na jednom mjestu i pokretanje zajedno.

Da biste pokrenuli test paketa, morate oznaฤiti klasu pomoฤ‡u dolje navedenih komentara:

  1. @Runwith(Suite.class)
  2. @SuiteClasses(test1.class,test2.classโ€ฆโ€ฆ) ili@Suite.SuiteClasses ({test1.class, test2.classโ€ฆโ€ฆ})

Uz gornje napomene, sve testne klase u paketu poฤet ฤ‡e se izvrลกavati jednu po jednu.

Koraci za izradu test paketa i test runnera

Korak 1) Napravite jednostavnu testnu klasu (npr. MyFirstClassTest) i dodajte metodu oznaฤenu s @test.

Koraci za izradu paketa testova i pokretaฤa testova

Korak 2) Stvorite drugu testnu klasu za dodavanje (npr. MySecondClassTest) i izradite metodu oznaฤenu s @test.

Koraci za izradu paketa testova i pokretaฤa testova

Korak 3) Da biste kreirali testSuite, morate prvo oznaฤiti klasu s @RunWith(Suite.class) i @SuiteClasses(class1.class2โ€ฆ..).

Koraci za izradu paketa testova i pokretaฤa testova

Korak 4) Napravite klasu Test Runner za izvoฤ‘enje naลกeg paketa testova kako je navedeno u nastavku;

Koraci za izradu paketa testova i pokretaฤa testova

Code Objaลกnjenje:

  • Code Redak 8: Deklariranje glavne metode testa klase koji ฤ‡e pokrenuti naลก JUnit Test.
  • Code Redak 9: Izvrลกavanje testnih sluฤajeva pomoฤ‡u JunitCore.runclasses koji uzima naziv testne klase kao parametar (u gornjem primjeru koristite TestSuiteExample.class prikazanu u koraku 3).
  • Code Redak 11: Obrada rezultata koriลกtenjem for petlje i ispis neuspjeลกnog rezultata.
  • Code Redak 13: Ispis uspjeลกnog rezultata.

Izlaz: Evo rezultata koji pokazuje uspjeลกan test bez greลกke trace kako je navedeno u nastavku:

Koraci za izradu paketa testova i pokretaฤa testova

JUnit Primjer paketa testova

Razmotrimo sloลพeniji primjer

JunitTest.java

JunitTest.java je jednostavna klasa oznaฤena s @RunWith i @Apartman primjedbe. Moลพete navesti broj .classes u paketu kao parametre kako je navedeno u nastavku:

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 je testna klasa koja ima testnu metodu za ispis poruke kao ลกto je navedeno u nastavku. Koristit ฤ‡ete ovu klasu kao paket u gore navedenoj klasi.

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 je joลก jedna ispitna klasa sliฤna SuiteTest1.java ima testnu metodu za ispis poruke kao ลกto je navedeno u nastavku. Koristit ฤ‡ete ovu klasu kao paket u 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);							
    }		

}		

Izlaz

Nakon izvrลกenja JunitTest.java koja sadrลพi paket koji ima test1.java i test2.java, dobit ฤ‡ete donji izlaz:

SuiteTest2.Java Izlaz

SuiteTest2.Java Izlaz

Rezime

U ovom ste vodiฤu detaljno nauฤili osnove testnog snopa i paketa testova uz primjer.

  • Testni kabelski sveลพanj ili automatizacija Ispitivanje je softver ili skup softvera koji korisniku omoguฤ‡uje testiranje podataka s viลกestrukim unosima i kontrolu izvrลกenja
  • Testni sveลพanj zapravo omoguฤ‡uje testni okvir koji radi sav posao izvrลกavanja testova pomoฤ‡u testne biblioteke i generiranja testnog izvjeลกฤ‡a
  • U Junitu, testni paket nam omoguฤ‡uje agregiranje svih testnih sluฤajeva mnogih klasa na jednom mjestu i pokretanje zajedno.

Saลพmite ovu objavu uz: