Kaj je parametrizirani test v Junitu?
Parametrizirani test je izvajanje istega preizkusa znova in znova z uporabo različnih vrednosti. Razvijalcu pomaga prihraniti čas pri izvajanju istega testa, ki se razlikuje le po vloženih podatkih in pričakovanih rezultatih.
Z uporabo parametriziranega testa lahko nastavite preskusno metodo, ki pridobi podatke iz nekega vira podatkov.
Razmislite o preprostem testu za seštevanje različnih števil. Koda je lahko videti tako -
Zgornji pristop vodi do velike odvečnosti.
Potrebujemo preprost pristop in. Z uporabo parametriziranega testa lahko preprosto dodate metodo za vnos 10 vnosov podatkov in preizkus se bo samodejno zagnal 10-krat.
Koraki za ustvarjanje parametriziranega testa JUnit
Naslednja koda prikazuje primer parametriziranega testa. Preizkusi metodo sum () razreda Aritmetika:
1. korak) Ustvarite predavanje. V tem primeru bomo vnesli dve številki z uporabo metode sum (int, int), ki bo vrnila vsoto danih števil
Korak 2) Ustvarite parametriziran testni razred
Razlaga kode
- Vrstica kode 11: Označite svoj testni razred s pomočjo @runWith (Parameterized.class).
- Vrstica kode 13: Razglasitev spremenljivke "firstNumber" kot zasebne in vnosa kot int.
- Vrstica kode 14: Spremenljivko 'secondNumber' razglasite za zasebno in jo vnesite kot int.
- Vrstica kode 15: Spremenljivko 'pričakovani rezultat' razglasite za zasebno in jo vnesite kot int.
- Vrstica kode 16: Razglasitev spremenljivke „airthematic“ za zasebno in tip za Airthematic.
@RunWith (ime_razreda.razred): Pripis @RunWith se uporablja za določitev imena razreda tekača. Če kot parameter ne določimo nobene vrste, bo runtime privzeto izbral BlockJunit4ClassRunner .
Ta razred je odgovoren za izvajanje testov z novim preskusnim primerkom. Odgovorna je za sklicevanje na metode življenjskega cikla JUnit, kot sta namestitev (pridruženi viri) in odstranitev (viri izdaje).
Če želite parametrizirati, morate označiti z @RunWith in predati zahtevani .class, ki ga želite preizkusiti
3. korak) Ustvarite konstruktor, ki shranjuje preskusne podatke. Shrani 3 spremenljivke
4. korak) Ustvarite statično metodo, ki generira in vrne preskusne podatke.
Vrstica kode 32,33: Ustvarjanje dvodimenzionalnega polja (zagotavljanje vhodnih parametrov za dodajanje). Z uporabo metode asList podatke pretvorimo v vrsto seznama. Ker je vrnjena vrsta vnosa metode zbiranje.
Vrstica kode 30: Uporaba oznake @Parameters za ustvarjanje nabora vhodnih podatkov za zagon našega testa.
Statična metoda, označena s pripisom @Parameters, vrne zbirko, kjer bodo vsi vnosi v zbirki vhodni podatki za eno ponovitev preizkusa.
Razmislite o elemenentu
{1,2,3}
Tukaj
firstNumber = 1
secondNumber = 2
pričakovani rezultat = 3
Tu bo vsak element matrike posredovan konstruktorju, vsakega posebej, saj je razred večkrat instantiran.
5. korak) Celotna koda
Razlaga kode:
- Vrstica kode 25: Uporaba oznake @Before za nastavitev virov (Airthematic.class tukaj). Pripomba @Before se tukaj uporablja za zagon pred vsakim testnim primerom. Vsebuje predpogoj za test.
- Koda 36: Uporaba oznake @Test za ustvarjanje našega testa.
- Kodijska vrstica 39: Ustvarjanje izjave za uveljavitev, da preverimo, ali je naša vsota enaka pričakovani.
6. korak) Ustvarite testni tekaški razred za zagon parametriziranega testa:
Razlaga kode:
- Vrstica kode 8: razglasitev glavne metode preizkusa razreda, ki bo izvajal naš test JUnit.
- Vrstica kode 9: Izvajanje testnih primerov z uporabo JunitCore.runclasses bo za parameter vzamelo ime testnega razreda (v našem primeru uporabljamo Airthematic.class).
- Vrstica kode 11: obdelava rezultata z uporabo for zanke in izpis neuspešnega rezultata.
- Vrstica kode 13: Natisnite uspešen rezultat.
Izhod:
Tukaj je rezultat, ki prikazuje uspešen test brez sledi napak, kot je navedeno spodaj:
Oglejte si rezultat na konzoli, ki prikazuje dodajanje dveh številk: -
Povzetek :
Parametrizirani test omogoča razvijalcu, da znova in znova izvede isti test z uporabo različnih vrednosti.
Pomembni pripisi, ki jih je treba uporabiti med parametrizacijo
- @RunWith
- @Parameters