2. óra · Szoftvertesztelés gyakorlat

A tesztelés alapvető folyamata

Teszttervezés, irányítás, elemzés, műszaki tervezés, megvalósítás és végrehajtás

Az óra végére képes leszel

  • Egy rövid követelményből tesztelési feltételeket és ellenőrizhető teszteseteket készítesz.
  • Megkülönbözteted a tervezést, az irányítást, az elemzést, a megvalósítást és a végrehajtást.
  • Rögzíted az elvárt és tényleges eredményt, és eltérés esetén használható hibajegyet írsz.
A munka menete
  1. 1TervezésCél, kockázat, környezet és időkeret.
  2. 2ElemzésMit kell ellenőrizni a követelményekben?
  3. 3Tervezés részleteiKonkrét teszteset és elvárt eredmény.
  4. 4MegvalósításAdatok, sorrend és teszteljárás előkészítése.
  5. 5VégrehajtásTényleges eredmény és eltérések rögzítése.
01 / TANANYAG

A gyakorlati helyzet és a követelmények

Egy iskolai eszközkölcsönző alkalmazást tesztelünk. A diák legfeljebb három aktív eszközt kölcsönözhet. Csak a „szabad” állapotú eszköz választható. Sikeres kölcsönzés után az eszköz „kiadva” állapotba kerül, és a diák kölcsönzései között látható. Ha a feltételek valamelyike nem teljesül, a rendszer nem ment új kölcsönzést, és érthető üzenetet ad.

A követelmény még nem teszt. Először meg kell fogalmazni, milyen viselkedés vizsgálható: a harmadik kölcsönzés sikeres, a negyedik elutasított; a szabad eszköz kiadható, a már kiadott nem; az állapot és a lista tartósan frissül. A két korlátozás egyidejű fennállására is gondoljunk: egy hibás tesztből különben nem derül ki, melyik szabály okozta az eltérést.

02 / TANANYAG

Teszttervezés és tesztirányítás

A terv megadja a vizsgálat célját, hatókörét, erőforrásait, környezetét, felelőseit és a kezdés, illetve befejezés feltételeit. Ebben a példában a kölcsönzés szabályait vizsgáljuk egy előre feltöltött tesztadatbázisban. Külön szerepeljen, hogy az egyes futások előtt az eszközök és a diák kölcsönzései ismert állapotban legyenek.

Az irányítás futás közben összeveti a tényleges előrehaladást a tervvel. Ha a tesztkörnyezet órákig nem elérhető, nem „sikertelen tesztként” könyveljük a futtatás nélkül maradt eseteket. Rögzítjük az akadályt, átrendezzük a munkát, és szükség esetén módosítjuk az ütemezést. A terv így ellenőrzési alap, nem egyszer megírt, változhatatlan papír.

03 / TANANYAG

Tesztelemzés és műszaki teszttervezés

Az elemzés a követelményeket vizsgálható tesztelési feltételekké alakítja. Ilyen feltétel a kölcsönzési felső korlát, az eszköz állapota, a mentés tartóssága és az elutasító üzenet. A műszaki tervezés az egyes feltételekből teszteseteket készít: kezdő állapot, bemenet, végrehajtandó művelet és előre rögzített elvárt eredmény.

A feltétel még általános állítás („a negyedik kölcsönzés tiltott”), a teszteset konkrét vizsgálat („D11 diáknak három aktív eszköze van, E42 szabad; kölcsönzési kérés; nincs új rekord, E42 szabad marad, és korlátot jelző üzenet látható”). A feltételeket és az eseteket érdemes az eredeti követelmény azonosítójához kapcsolni, hogy a lefedettség követhető legyen.

04 / TANANYAG

Tesztmegvalósítás és végrehajtás

Megvalósításkor előkészítjük a tesztadatokat, ellenőrizzük a környezetet, sorrendbe rendezzük az eseteket, és meghatározzuk, hogyan állítjuk vissza a kiinduló állapotot. Végrehajtáskor lefuttatjuk az eljárást, rögzítjük a tényleges eredményt, majd összevetjük az előre meghatározott elvárással. A teszt eredménye lehet megfelelt, nem felelt meg vagy blokkolt; a blokkolt futásról nem állíthatjuk, hogy a funkció jó vagy rossz.

Ha eltérés jelentkezik, a hibajegyben legyen pontos cím, verzió és környezet, kiinduló adat, reprodukálási lépések, elvárt és tényleges eredmény, valamint hasznos bizonyíték. A fejlesztői javítás után ugyanazt az esetet újrafuttatjuk (megerősítő teszt), és a kapcsolódó funkciókat is ellenőrizzük (regressziós teszt).

Gyakorlófeladatok

Előbb oldd meg a feladatot, majd nyisd meg a segítséget és a mintamegoldást.

1. Tesztelési feltételek

Az eszközkölcsönző négy mondatos követelményéből írj legalább öt külön vizsgálható feltételt. Melyik állapotot kell minden eset előtt beállítani?

Kérek egy tippet

Korlát, választhatóság, állapotváltozás, lista és elutasítás is szerepel a szabályban.

Mintamegoldás megtekintése

Például: legfeljebb három aktív eszköz; harmadik kölcsönzés megengedett; negyedik elutasított; kiadott eszköz nem választható; sikeres mentés után az eszköz kiadva; a diák listájában megjelenik; elutasításkor nincs új rekord és megjelenik üzenet. Előkészítendő a diák aktív darabszáma és az eszköz állapota.

2. Teszteset megírása

Írj konkrét tesztesetet arra, hogy a diák a harmadik szabad eszközt kölcsönzi. Add meg a kezdő állapotot, a lépést és legalább három ellenőrizhető elvárt eredményt.

Kérek egy tippet

A felület üzenete mellett az eszköz állapotát és a mentett rekordot is vizsgáld.

Mintamegoldás megtekintése

Kezdő állapot: D11 diáknak két aktív kölcsönzése van, E42 eszköz szabad. Lépés: D11 kölcsönözze E42-t. Elvárt: sikeres visszajelzés; pontosan egy új kölcsönzési rekord; E42 állapota kiadva; D11 listájában három aktív eszköz látszik, frissítés után is.

3. Eltérés és hibajegy

A három aktív kölcsönzéssel rendelkező diák a negyediket is megkapta. Fogalmazz meg egy rövid, újrajátszható hibajegyet.

Kérek egy tippet

Írd külön az elvárást és a megfigyelést; kerüld a feltételezett kódhibát.

Mintamegoldás megtekintése

Cím: Negyedik aktív kölcsönzés létrehozható. Környezet: tesztverzió, előkészített D11 és E42. Előfeltétel: D11 három aktív eszköze, E42 szabad. Lépés: belépés D11-ként, E42 kölcsönzése. Elvárt: elutasítás, nincs új rekord, E42 szabad. Tényleges: sikeres üzenet és negyedik rekord, E42 kiadva. Csatolható képernyőkép és rekordazonosító.

4. Irányítás futás közben

Öt esetből kettő lefutott, a környezet elérhetetlenné vált. Hogyan jelölnéd a hátralévő hármat, és mit tennél a tervvel?

Kérek egy tippet

A végrehajtatlan esetekről nem született megfelelési eredmény.

Mintamegoldás megtekintése

A hátralévő három blokkolt vagy még nem futtatott állapotú, nem sikeres és nem hibás. Rögzítem a környezeti akadályt, jelzem a felelősnek, visszaállítás után újratervezem a sorrendet és a határidőt; az érintett eseteket ténylegesen végrehajtom.

ELLENŐRIZD MAGAD

Mi különbözteti meg a tesztelési feltételt a tesztesettől?

Amit érdemes megjegyezni

  • A tesztelési folyamat tevékenységei egymáshoz kapcsolódnak, és szükség esetén visszalépünk egy korábbi lépéshez.
  • Az elvárt eredményt a futás előtt rögzítsük.
  • A blokkolt eset nem bizonyítja a rendszer megfelelőségét; az eltérést reprodukálhatóan dokumentáljuk.

Visszajelzés erről a leckéről

Mennyire volt hasznos? Az értékelést és a megjegyzést csak a tanár látja.

Értékelés, 1–5

Név és e-mail-cím megadása nem szükséges. Más tanulók értékelései és megjegyzései nem jelennek meg ezen az oldalon.