JUnit Paraméteres teszt példával a @Parameters használatával
Mi az a paraméteres teszt a Junitban?
A paraméterezett teszt során ugyanazt a tesztet kell újra és újra végrehajtani, különböző értékekkel. Segítségével a fejlesztő időt takaríthat meg ugyanazon teszt végrehajtása során, amely csak a bemeneti adatokban és a várt eredményekben tér el.
A Paraméteres teszt segítségével beállíthatunk egy olyan vizsgálati módszert, amely adatokat kér le valamilyen adatforrásból.
Vegyünk egy egyszerű tesztet különböző számok összegzésére. A kód így nézhet ki –
A fenti megközelítés sok redundanciához vezet.
Egyszerű megközelítésre van szükségünk és. A paraméterezett teszt használatával egyszerűen hozzáadhat egy metódust 10 adatbevitelhez, és a teszt 10-szer automatikusan lefut.
A paraméterezett létrehozásának lépései JUnit teszt
A következő kód példát mutat egy paraméterezett tesztre. Az aritmetikai osztály sum() metódusát teszteli:
Step 1) Hozzon létre egy osztályt. Ebben a példában két számot fogunk beírni az összeg (int,int) módszerrel, amely a megadott számok összegét adja vissza
Step 2) Hozzon létre egy paraméterezett tesztosztályt
Code Magyarázat
- Code 11 vonal: Jegyezze fel tesztosztályát a @runWith(Parameterized.class) használatával.
- Code 13 vonal: A 'firstNumber' változó privátként való deklarálása, a típus pedig int.
- Code 14 vonal: A 'secondNumber' változó privátként való deklarálása és a típus int.
- Code 15 vonal: Az 'expectedResult' változó privátként való deklarálása és az int típus megadása.
- Code 16 vonal: Az 'airthematic' változó privátként való deklarálása, a típus pedig Airthematic.
@RunWith(class_name.class): @RunWith az annotáció a futóosztály nevének megadására szolgál. Ha nem adunk meg semmilyen típust paraméterként, akkor a futási környezet választ BlockJunit4ClassRunner alapértelmezés szerint.
Ez az osztály felelős az új tesztpéldánnyal futtatandó tesztekért. Felelős a behívásért JUnit életciklus-módszerek, mint például a beállítás (társított erőforrások) és a teardown (az erőforrások felszabadítása).
A paraméterezéshez megjegyzéseket kell írnia a @RunWith használatával, és át kell adnia a szükséges .class-t a teszteléshez
Step 3) Hozzon létre egy konstruktort, amely tárolja a tesztadatokat. 3 változót tárol
Step 4) Hozzon létre egy statikus metódust, amely tesztadatokat generál és visszaad.
Code 32,33 vonal: Kétdimenziós tömb létrehozása (bemeneti paraméterek megadása az összeadáshoz). Az asList módszerrel az adatokat List típusúvá alakítjuk. Mivel a metódus bemenetének visszatérési típusa a gyűjtés.
Code 30 vonal: <p></p> @Paraméterek megjegyzést, hogy létrehozzon egy bemeneti adatkészletet a teszt futtatásához.
A @Parameters annotáció által azonosított statikus metódus egy gyűjteményt ad vissza, ahol a gyűjtemény minden egyes bejegyzése a teszt egy iterációjának bemeneti adata lesz.
Vegye figyelembe az elemet
1,2,3 {}
Itt
firstNumber =1
secondNumber=2
várt eredmény=3
Itt minden tömbelem átadásra kerül a konstruktornak, egyenként, mivel az osztály többször példányosodik.
Step 5) A teljes kód
Code Magyarázat:
- Code 25 vonal: A @Before annotation használata az erőforrások beállításához (Airthematic.class itt). A @Before annotáció itt minden teszteset előtt lefut. Tartalmazza a teszt előfeltételét.
- Code 36 vonal: @Test annotáció használata tesztünk elkészítéséhez.
- Code 39 vonal: Állítási utasítás létrehozása annak ellenőrzésére, hogy az összegünk megegyezik-e azzal, amit vártunk.
Step 6) Hozzon létre egy tesztfutó osztályt a paraméterezett teszt futtatásához:
Code Magyarázat:
- Code 8 vonal: Az osztályteszt fő metódusának deklarálása, amely lefuttatja a mi JUnit teszt.
- Code 9 vonal: A tesztesetek végrehajtása a JunitCore.runclasses használatával a tesztosztály nevét veszi paraméterként (példánkban az Airthematic.classt használjuk).
- Code 11 vonal: Az eredmény feldolgozása a for ciklus használatával és a sikertelen eredmény kinyomtatása.
- Code 13 vonal: A sikeres eredmény kinyomtatása.
output:
Itt látható a kimenet, amely sikeres tesztet mutat hibák nélkül trace az alábbiak szerint:
Tekintse meg az eredményt a konzolon, amely két szám hozzáadását mutatja: -
Összegzésként
A paraméterezett teszt lehetővé teszi a fejlesztőnek, hogy ugyanazt a tesztet újra és újra végrehajtsa különböző értékekkel.
A paraméterezés során használandó fontos megjegyzések
- @RunWith
- @Paraméterek









