JUnit Paraméterezett teszt példával @Parameters segítségével

Tartalomjegyzék:

Anonim

Mi a paraméteres teszt a Junitban?

A paraméteres teszt ugyanazon teszt újra és újra végrehajtása különböző értékek felhasználásával. Segít a fejlesztőnek időt spórolni ugyanazon teszt végrehajtásában, amely csak a bemeneteikben és a várt eredményekben különbözik.

A Parameterized test segítségével beállíthat egy tesztelési módszert, amely valamilyen adatforrásból nyeri az adatokat.

Vegyünk egy egyszerű tesztet a 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 módszert 10 adatbevitel beviteléhez, és a teszt automatikusan tízszer fog lefutni.

Paraméterezett JUnit teszt létrehozásának lépései

A következő kód egy példát mutat be egy paraméterezett tesztre. A számtani osztály sum () módszerét teszteli:

1. lépés: Hozzon létre egy osztályt. Ebben a példában két számot fogunk bevinni a sum (int, int) módszerrel, amely visszaadja az adott számok összegét

2. lépés: Hozzon létre egy paraméterezett tesztosztályt

Kód Magyarázat

  • 11. kódsor: Jegyezze fel a tesztosztályt a @runWith (Parameterized.class) használatával.
  • 13. kódsor : Az 'firstNumber' változó privátnak, a type int-nek nyilvánítása.
  • Kódsor 14: A 'secondNumber' változó privátnak nyilvánítása, és típusként int.
  • 15. kódsor : A 'várt eredmény' változó privátként és int névként való deklarálása.
  • 16. kódsor : Az „airthematic” változó privátnak és típusnak nyilvánítása Airthematic.

@RunWith (class_name.class): @RunWith magyarázat arra használható, hogy a második osztály nevét. Ha semmilyen típust nem adunk meg paraméterként, akkor a futásidő alapértelmezés szerint a BlockJunit4ClassRunner programot választja .

Ez az osztály felelős a tesztek új tesztpéldányokkal történő futtatásáért. Feladata a JUnit életciklus-módszerek, például a beállítás (társított erőforrások) és a lebontás (kiadási erőforrások) meghívása.

A paraméterezéshez meg kell jegyeznie a @RunWith használatával, és át kell adnia a tesztelni kívánt

3. lépés: Hozzon létre egy konstruktort, amely tárolja a tesztadatokat. 3 változót tárol

4. lépés: Hozzon létre egy statikus módszert, amely generálja és visszaadja a tesztadatokat.

Kódsor 32,33: Kétdimenziós tömb létrehozása (bemeneti paraméterek megadása az összeadáshoz). Az asList metódussal konvertáljuk az adatokat Lista típusokká. Mivel a metódus visszatérési típusa a gyűjtés.

30. kódsor : A @Parameters annotációval létrehozhatunk egy bemeneti adatsort a tesztünk futtatásához.

A @Parameters annotációval azonosított statikus módszer egy Gyűjteményt ad vissza, ahol a Gyűjtemény minden bejegyzése a teszt egy iterációjának bemeneti adata lesz.

Tekintsük az elemenent

{1,2,3}

Itt

firstNumber = 1

secondNumber = 2

Várható eredmény = 3

Itt minden tömb elemet egyenként továbbítanak a konstruktornak, mivel az osztályt többször példányosítják.

5. lépés: A teljes kód

Kód Magyarázat:

  • 25. kódsor : A @Before kommentár használata az erőforrások beállításához (itt az Airthematic.class). A @Before kommentár itt használható az egyes tesztesetek futtatására. A teszt előfeltételét tartalmazza.
  • 36. kódsor : A @Test kommentár használata a teszt létrehozásához.
  • 39. kódsor: Állító állítás létrehozása annak ellenőrzésére, hogy az összeg egyenértékű-e azzal, amire számítottunk.

6. lépés: Hozzon létre egy teszt futó osztályt a paraméterezett teszt futtatásához:

Kód Magyarázat:

  • 8. kódsor : A JUnit tesztünket lefuttató osztályteszt fő módszerének deklarálása.
  • 9. kódsor : Tesztesetek végrehajtása a JunitCore.runclasses használatával a tesztosztály nevét fogja paraméterként figyelembe venni (Példánkban az Airthematic.class-ot használjuk).
  • 11. kódsor : Az eredmény feldolgozása a ciklus használatával és a sikertelen eredmények kinyomtatása.
  • 13. kódsor: A sikeres eredmény kinyomtatása.

Kimenet:

Itt van az a kimenet, amely a sikeres tesztet mutatja az alábbiak szerint:

Lásd az eredményt a konzolon, amely két szám hozzáadását mutatja: -

Összegzés :

A paraméterezett teszt lehetővé teszi a fejlesztő számára, hogy ugyanazt a tesztet különböző értékek segítségével újra és újra végrehajtsa.

A paraméterezés során használandó fontos megjegyzések

  • @RunWith
  • @Paraméterek