ISTQB Certified Tester Fundatin Level Hivatals magyar nyelvű tanterv Alapszintű képesítés Verzió: 2.0, 2010.03.15 (Official ISTQB CTFL Syllabus Hungarian) (ISTQB CTFL Syllabus versin: 2007) HTB Hungarian Testing Bard Magyar Szftvertesztelői Tanács Egyesület H-1123 Budapest, Alktás u. 53. (MOM A-Building / A épület), Magyarrszág Tel: +36 1 382 7297 Fax: +36 1 382 7298 http://www.hstqb.cm inf@hstqb.cm Cpyright 2009 Magyar Szftvertesztelői Tanács Egyesület és a dkumentum szerzői. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0ldal: 1 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Minden jg fenntartva! A dkumentum egészének vagy részeinek bármilyen célú felhasználása kizárólag a frrás és jelen szerzői jg feltüntetésével történhet! Jelen hivatals Tananyag az alábbi feltételek mellett használható fel: 1) Oktatást szervező személy vagy intézmény a Tananyagt felhasználhatja az ktatási anyagának alapjául, de kizárólag abban az esetben, amennyiben a jelen Tananyag, mint frrás és annak szerzői jgvédelmi jelzései egyértelműen megjelölésre kerülnek mind az ktatási anyagban és minden hivatkzási helyen, mind a kurzuskra vnatkzó hirdetésekben, tvábbá amennyiben az ktatást szervező és ktatási anyaga a Tananyagra vnatkzó érvényes hivatals akkreditációval rendelkezik. 2) Egyéb célra való felhasználás, úgy, mint cikkekben, könyvekben való hivatkzás, illetve részletek közlése a frrás és jelen szerzői jg feltüntetésével történhet. Eredeti mű címe: Certified Tester Fundatin Level Syllabus, Versin 2007, Internatinal Sftware Testing Qualificatins Bard Eredeti mű szerzői tulajdnjg védelmi jelölése: Cpyright 2007 the authrs fr the update 2007 (Thmas Müller (chair), Drthy Graham, Debra Friedenberg and Erik van Veendendal) Cpyright 2005, the authrs (Thmas Müller (chair), Rex Black, Sigrid Eldh, Drthy Graham, Klaus Olsen, Maaret Pyhäjärvi, Geff Thmpsn and Erik van Veendendal). All rights reserved ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 2 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Dkumentum verziókövetés Verzió Dátum Megjegyzés HTB-2009-1.0 2009-10-06 ISTQB 2007 2009-05-01 Első hivatalsan publikált magyar váltzat az alábbi eredeti váltzat alapján. Teendők: függelékek megírása. Certified Tester Fundatin Level Syllabus Maintenance Release ISTQB 2007 1.1 2009-11-15 ISTQB 2007 1.2 2009-11-22 ISTQB 2007 1.3 2010-02-26 ISTQB 2007 2.0 2010-03-15 Kisebb javításk, a Syllabus 2.0 váltzásk átvezetése Kisebb javításk, a Syllabus 2.0 váltzásk átvezetése A HTB felülvizsgálatának eredménye. A glsszárium 2.1 verziójával való összehanglás A HTB felülvizsgálatának eredménye. Szinkrnizálás a Szftvertesztelés egységesített kifejezéseinek gyűjteménye (glssary) 3.0 verzióval, amellyel együtt kerül kiadásra. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 3 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Tartalmjegyzék Köszönetnyilvánítás...6 Bevezetés...7 A dkumentum célja...7 Az Alapszintű Tesztelő Képesítés a szftvertesztelésben...7 Tanulási célk/tudásszint...7 A vizsga...7 Akkreditáció...7 Részletesség...8 A tananyag felépítése...8 1 A tesztelés alapjai (K2)...9 1.1 Miért szükséges a tesztelés? (K2)... 10 1.1.1 Szftverrendszerek körülményei (K1)... 10 1.1.2 A szftverhibák kai (K2)... 10 1.1.3 A tesztelés szerepe a szftverfejlesztésben, karbantartásban és üzemeltetésben (K2)... 10 1.1.4 A tesztelés és a minőség (K2)... 10 1.1.5 Mennyi tesztelés elég? (K2)... 11 1.2 Mi a tesztelés? (K2)... 12 1.3 Általáns tesztelési alapelvek (K2)... 13 1.4 A tesztelés alapvető flyamata (K2)... 14 1.4.1 Teszttervezés és irányítás (K1)... 14 1.4.2 Teszt elemzés és terv (K1)... 14 1.4.3 Tesztmegvalósítás és végrehajtás (K1)... 14 1.4.4 A kilépési feltételek értékelése és jelentés (K1)... 15 1.4.5 Teszt lezárása (K1)... 15 1.5 A tesztelés pszichlógiája (K2)... 16 2 Tesztelés a szftver életciklusán át (K2)... 18 2.1 Szftverfejlesztési mdellek (K2)... 19 2.1.1 V-mdell (szekvenciális fejlesztési mdell) (K2)... 19 2.1.2 Iteratív-inkrementális fejlesztési mdellek (K2)... 19 2.1.3 Tesztelés egy életciklus mdellen belül (K2)... 19 2.2 Tesztelési szintek (K2)... 21 2.2.1 Kmpnensteszt (K2)... 21 2.2.2 Integrációs teszt (K2)... 21 2.2.3 Rendszerteszt (K2)... 22 2.2.4 Átvételi teszt (K2)... 22 2.3 Teszttípusk (K2)... 24 2.3.1 Funkció tesztelése (funkcinális teszt) (K2)... 24 2.3.2 Nemfunkcinális szftverjellemzők tesztelése (nemfunkcinális tesztelés) (K2)... 24 2.3.3 A szftver struktúrájának/felépítésének tesztelése (strukturális teszt) (K2)... 25 2.3.4 Váltzáskhz kapcslódó tesztelés (ellenőrző teszt (újratesztelés) és regressziós teszt) (K2) 25 2.4 Karbantartási teszt (K2)... 26 3 Statikus technikák (K2)... 27 3.1 A statikus technikák és a tesztelési flyamat (K2)... 28 3.2 A felülvizsgálat flyamata (K2)... 29 3.2.1 Frmális felülvizsgálat fázisai (K1)... 29 3.2.2 Feladatk, felelősségi körök (K1)... 29 3.2.3 Felülvizsgálatk típusai (K2)... 31 3.2.4 Felülvizsgálatk sikerességi tényezői (K2)... 32 3.3 Statikus elemzés eszközökkel (K2)... 33 4 Műszaki teszttervezési technikák (K3)... 34 4.1 A teszt fejlesztési flyamata (K2)... 36 4.2 Műszaki teszttervezési technikák kategóriái (K2)... 37 4.3 Specifikáció alapú vagy feketedbz technikák (K3)... 38 ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 4 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 4.3.1 Ekvivalencia partícinálás (K3)... 38 4.3.2 Határérték elemzés (K3)... 38 4.3.3 Döntési tábla teszt (K3)... 38 4.3.4 Állaptátmenet teszt (K3)... 38 4.3.5 Használati eset teszt (K2)... 39 4.4 Struktúra alapú, vagy fehérdbz technikák (K3)... 40 4.4.1 Utasítás szintű teszt és lefedettség (K3)... 40 4.4.2 Döntési teszt és lefedettség (K3)... 40 4.4.3 Egyéb struktúra alapú technikák (K1)... 40 4.5 Tapasztalat alapú technikák (K2)... 41 4.6 Tesztelési technikák kiválasztása (K2)... 42 5 Tesztmenedzsment (K3)... 43 5.1 Tesztelő szervezet (K2)... 45 5.1.1 Tesztelő szervezet és a függetlenség (K2)... 45 5.1.2 A tesztvezető és a tesztelő feladatai (K1)... 45 5.2 Teszttervezés és becslés (K2)... 47 5.2.1 Teszttervezés (K2)... 47 5.2.2 Teszttervezési tevékenységek (K2)... 47 5.2.3 Kilépési feltétel (K2)... 47 5.2.4 Tesztelés becslése (K2)... 48 5.2.5 Tesztelési megközelítések (tesztelési stratégiák) (K2)... 48 5.3 A teszt előrehaladásának felügyelete és vezérlése (K2)... 50 5.3.1 A teszt előrehaladásának felügyelete (K1)... 50 5.3.2 Tesztjelentés (K2)... 50 5.3.3 Tesztirányítás (K2)... 50 5.4 Knfiguráció menedzsment (K2)... 52 5.5 Kckázat és tesztelés (K2)... 53 5.5.1 Prjekt kckázatk (K2)... 53 5.5.2 Termékkckázatk (K2)... 53 5.6 Incidens menedzsment (K3)... 55 6 Eszköztámgatás a tesztelésben (K2)... 57 6.1 Teszteszközök típusai (K2)... 58 6.1.1 Teszteszközök sztályzása (K2)... 58 6.1.2 Eszköztámgatás a tesztelés és a tesztek menedzsmentjéhez (K1)... 58 6.1.3 A statikus teszt eszköztámgatása (K1)... 59 6.1.4 A tesztspecifikáció eszköztámgatása (K1)... 60 6.1.5 A tesztvégrehajtás és naplózás eszköztámgatása (K1)... 60 6.1.6 Teljesítmény és felügyelet eszköztámgatása (K1)... 61 6.1.7 Meghatárztt alkalmazási területek eszköztámgatása (K1)... 61 6.1.8 Más eszközöket alkalmazó eszköztámgatás (K1)... 62 6.2 Eszközök hatékny használata: a lehetséges előnyök és kckázatk (K2)... 63 6.2.1 A tesztelés eszköztámgatásának lehetséges előnyei és kckázatai (minden eszközre) (K2) 63 6.2.2 Különleges tényezők egyes eszköz-típusknál (K1)... 63 6.3 Eszköz bevezetése egy szervezetnél (K1)... 65 7 Irdalmjegyzék... 66 Szabványk... 66 Könyvek... 66 Tárgymutató... 69 TeszttervTeszttervTesztirányítás ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 5 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Köszönetnyilvánítás Magyar váltzat elkészítésében közreműködtek: Tóth Szablcs, Kaprs Gábr, Papp Ferenc, Gyimóthi Zltán, Vidács László, Beszédes Árpád. Internatinal Sftware Testing Qualificatins Bard Wrking Party Fundatin Level (Editin 2007): Thmas Müller (chair), Drthy Graham, Debra Friedenberg, and Erik van Veendendal. The cre team thanks the review team (Hans Schaefer, Stephanie Ulrich, Meile Psthuma, Anders Petterssn, and Wnil Kwn) and all natinal bards fr the suggestins t the current versin f the syllabus. Internatinal Sftware Testing Qualificatins Bard Wrking Party Fundatin Level (Editin 2005): Thmas Müller (chair), Rex Black, Sigrid Eldh, Drthy Graham, Klaus Olsen, Maaret Pyhäjärvi, Geff Thmpsn and Erik van Veendendal. The cre team thanks the review team and all natinal bards fr the suggestins t the current syllabus. Particular thanks t: (Denmark) Klaus Olsen, Christine Rsenbeck-Larsen, (Germany) Matthias Daigl, Uwe Hehn, Til Linz, Hrst Phlmann, Ina Schieferdecker, Sabine Uhde, Stephanie Ulrich, (Netherlands) Meile Psthuma (India) Vipul Kcher, (Israel) Shmuel Knishinsky, Ester Zabar, (Sweden) Anders Claessn, Mattias Nrdin, Ingvar Nrdström, Stefan Ohlssn, Kennet Osbjer, Ingela Skytte, Klaus Zeuge, (Switzerland) Armin Brn, Silvi Mser, Ret Müller, Jerg Pietzsch, (UK) Aran Ebbett, Isabel Evans, Julie Gardiner, Andrew Gslin, Brian Hambling, James Lyndsay, Helen Mre, Peter Mrgan, Trevr Newtn, Angelina Samar, Shane Saunders, Mike Smith, Richard Taylr, Neil Thmpsn, Pete Williams, (US) Jn D Hagar, Dale Perry. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 6 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Bevezetés A dkumentum célja Jelen tananyag alapt nyújt az Internatinal Sftware Testing Qualificatins Bard (ISTQB) által hivatalsan jóváhagytt Certified Tester Fundatin Level (CTFL) nemzetközi szftvertesztelési szakember minősítés alapszintjéhez. A jelen tananyag a Magyar Szftvertesztelői Tanács Egyesület (Hungarian Testing Bard HTB) által hivatalsan kiadtt, az eredeti angl nyelvű tananyag magyar nyelvű frdítása a hivatalsan elfgadtt magyar glsszárium (HTB Szftvertesztelés standard kifejezéseinek tára, 2.0 verzió, 2009-04-06) alapján. A tananyagt a HTB a nemzeti vizsgáztató szerv (HTB) részére vizsgakérdések saját nyelven történő kidlgzásáhz, valamint a képzési szlgáltatók akkreditációjáhz bcsájtja rendelkezésre. A képzési szlgáltatók biztsítják a tanflyam anyagát, és meghatárzzák a megfelelő ktatási módszereket az akkreditációhz; a tananyag pedig segíti a tanulókat a vizsgára való felkészülésben. Az Alapszintű Tesztelő Tanúsítvány a szftvertesztelésben Az Alapszintű Tanúsítványt bárki megszerezheti, aki szftverteszteléssel fglalkzik. Ebbe a körbe tartznak a tesztelők, tesztelemzők, tesztmérnökök, tesztelési tanácsadók, tesztmenedzserek, felhasználói átvételi tesztelők és szftverfejlesztők. Az Alapszintű Tanúsítvány azk számára is megfelelő, akik a szftvertesztelés alapjait kívánják megismerni: prjektmenedzserek, minőségmenedzserek, szftverfejlesztő menedzserek, (megrendelő részéről) vállalati megbízttak, IT vezetők és menedzsment tanácsadók. Az Alapszintű Tanúsítvánnyal rendelkezők számára lehetőség nyílik magasabb szintű szftvertesztelési minősítés megszerzésére. Tanulási célk/tudásszint Jelen tananyag minden fejezetéhez egy megértési szintet rendelünk: K1: emlékezés, ismeret, felidézés; K2: megértés, kifejtés, indklás (érvelés), összehasnlítás, sztályzás, besrlás, példák használata, összefglalás; K3: alkalmazás, használat. A részek címei alatt lévő Kifejezések bekezdésekben felsrlt szakkifejezésekre emlékezni kell (K1) akkr is, ha a tanulási célk ezt nem említik meg. A vizsga Az Alapszintű Tanúsítványhz kapcslódó vizsga az itt közölt tananyagra épül. A vizsgakérdések megválaszlásáhz a tananyag több fejezetének ismeretére is szükség lehet. A tananyag bármely fejezete vizsga tárgyát képezheti. A vizsga feleletválasztós feladatkat tartalmaz. A vizsga letehető akkreditált képzés részeként vagy egyénileg. Magyarrszágn az Alapszintű Biznyítvány megszerzéséhez szükséges vizsgát a HTB vizsgaközpntjainál lehet letenni. Bármilyen más vizsgaközpntban való vizsgatételhez a HTB engedélye szükséges. Akkreditáció Egy, az ISTQB által elismert nemzeti bizttság jgsult akkreditálni azkat a képzési szlgáltatókat, amelyek tanterve követi a jelen tananyagt. Az akkreditáció irányelveit az akkreditációt végrehajtó bizttságtól vagy testülettől lehet beszerezni. Az akkreditált tanflyamkat elismerik, mint a jelen tananyagnak megfelelőt, tvábbá ezek a tanflyamk ISTQB vizsgáztatásra is jgsultak. Tvábbi részletek a D mellékletben. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 7 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Részletesség A tananyag részletessége nemzetközi szinten egységes ktatást és vizsgáztatást tesz lehetővé. Ennek érdekében a tananyag a következőkből áll: Általáns képzési célk, melyek az alapszint célkitűzéseit tartalmazzák. Az ktatandó infrmációk listája, leírással és az esetleg szükséges tvábbi frrásk megjelölésével. Az egyes területek ktatási céljai, melyek az elérendő kgnitív tanulási eredményt és tudást írják le. Kifejezések listája, melyeket a hallgatóknak képesnek kell lenniük felidézni és értelmezni. Az ktatandó alapfgalmak leírása, köztük frrásk, például a felhasználható irdalm illetve szabványk jegyzéke. A tananyag nem nyújt teljes leírást a szftvertesztelésről; csak az alapszintű képzések részletességével érinti a témát.. A tananyag felépítése A tananyag hat fő részt tartalmaz. A felső címsr tartalmazza a rész által lefedett ktatási célk szintjeit, valamint az adtt részre szánt időt. Például: 2. Tesztelés a szftver életciklusán át (K2) 115 perc Azt jelenti, hgy a 2. rész K1 (ha magasabb szint van megjelölve, az alsóbb szintek jelenlétét is feltételezzük) és K2 ktatási célkat tartalmaz (de K3-t már nem), és a rész anyagának ktatásáhz 115 perc szükséges. Minden rész több fejezetet tartalmaz. A fejezetekhez is fel vannak tüntetve a tanulási célk valamint a fejezet ktatásáhz szükséges idő. Azn alfejezetek, melyeknél nincs idő megadva, a fejezetre adtt időbe tartznak. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 8 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 1 A tesztelés alapjai (K2) 155 perc A tesztelés alapjainak tanulási céljai A célk azt határzzák meg, hgy a tanuló az egyes mdulk befejezése után mit lesz képes végrehajtani. 1.1 Miért szükséges a tesztelés? (K2) TC-1.1.1 Annak bemutatása példákkal bemutatni, hgyan kzhat egy prgramhiba kárt egy személynek, a környezetnek, vagy egy cégnek (K2) TC-1.1.2 Egy hiba kiváltó kának és a hatásainak megkülönböztetése. (K2) TC-1.1.3 A tesztelés szükségességének indklása, példákkal alátámasztva (K2) TC-1.1.4 Annak bemutatása, hgy a tesztelés miért a minőségbiztsítás része, és példákn keresztül szemléltetni a tesztelés szerepét a jbb minőség elérésében. (K2) TC-1.1.5 A következő kifejezések felidézése: emberi eredetű hiba, prgramhiba, hiba, meghibásdás (K1) 1.2 Mi a tesztelés? (K2) TC-1.2.1 A tesztelés általáns céljainak felidézése. (K1) TC-1.2.2 A a tesztelés szftverfejlesztésben, karbantartásban és üzemeltetésben; való szerepének leírása lyan módszerként, amely segítségével megtalálhatók a hibák, megbízhatóság és megfelelő infrmáció biztsítható, illetve megelőzhetők a prgramhibák. (K2) 1.3 Általáns tesztelési alapelvek (K2) TC-1.3.1 Az általáns tesztelési alapelvek kifejtése. (K2) 1.4 A tesztelés alapvető flyamata (K1) TC-1.4.1 Az alapvető tesztelési tevékenységek felidézése a tesztelés tervezésétől a teszt befejezéséig, az egyes tesztelési tevékenységek fő feladatainak leírása. (K1) 1.5 A tesztelés pszichlógiája (K2) TC-1.5.1 Annak felidézése, hgy a tesztelés sikerét pszichlógiai tényezők beflyáslják (K1): a világs tesztelési célkitűzések meghatárzzák a tesztelők hatéknyságát; a saját magunk hibáit nem vesszük észre; udvarias kmmunikáció és visszajelzés a hibákról. TC-1.5.2 A tesztelők és a fejlesztők gndlkdásmódjának szembeállítása. (K2) ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 9 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 1.1 Miért szükséges a tesztelés? (K2) 20 perc Kifejezések Prgramhiba, emberi eredetű hiba, meghibásdás, minőség, kckázat. 1.1.1 Szftverrendszerek környezete (K1) A szftverrendszerek egyre nagybb szerepet játszanak életünkben, az üzleti alkalmazásktól (mint például bankk (banki tranzakciók)) a fgyasztói termékekig (például autók). A legtöbb ember tapasztalt már lyat, hgy egy szftver nem megfelelő módn működött. Egy helytelenül működő szftver rengeteg prblémát kzhat, beleértve a pénz és időveszteséget, az üzleti jó hírnév elvesztését, és akár sérülést, vagy halált is eredményezhet. 1.1.2 A szftverhibák kai (K2) Az ember hibát követhet el, tévedhet, ami prgramhibát kz a kódban, szftverben vagy rendszerben, esetleg dkumentumban. Ha a hibás kódt lefuttatjuk, a rendszer nem hajtja végre azt, amit kellene (vagy végrehajt lyat, amit nem kellene), s ez meghibásdáshz vezet. A szftver, a rendszer vagy a dkumentumk hibái meghibásdáskat kzhatnak, aznban nem minden prgramhiba kz meghibásdást. Hibák azért lépnek fel, mert az emberek időnként tévednek, szrs határidőket kell betartaniuk, bnylult kódkkal, kmplex infrastruktúrában, váltzó technlógiákkal és/vagy száms rendszerkölcsönhatással kell dlgzniuk. Meghibásdást kzhatnak a környezeti visznyk is: a sugárzás, a mágnesesség, az elektrms mezők és a szennyezés a hardvertulajdnságk megváltztatásával hibaeseményeket kzhatnak, vagy beflyáslhatják a szftver futását. 1.1.3 A tesztelés szerepe a szftverfejlesztésben, karbantartásban és üzemeltetésben (K2) A rendszerek és a dkumentáció szigrú tesztelése hzzájárulhat a használat srán fellépő prblémák kckázatának csökkentéséhez valamint a szftverrendszer minőségének javításáhz azáltal, hgy a talált hibákat a rendszer kibcsátása előtt kijavítják. A szftvertesztelésre szükség lehet akkr is, ha a szftvernek szerződésben fglalt, vagy jgi előírásknak, ipari szabványknak kell megfelelnie. 1.1.4 A tesztelés és a minőség (K2) A tesztelés lehetőséget teremt a szftver-minőség mérésére a talált hibák alapján, mind a funkcinális, mind a nem-funkcinális szftverkövetelmények valamint a jellemzők terén (például megbízhatóság, használhatóság, hatéknyság, karbantarthatóság és hrdzhatóság). Tvábbi infrmáció a nemfunkcinális tesztről a 2. részben található; a szftverjellemzőkről bővebben pedig a Sftware Engineering Sftware Prduct Quality (ISO 9126)-ban (magyar megfelelője: MSZ ISO/IEC 9126:2000. Infrmatika. Szftvertermékek értékelése. Minőségi jellemzők és használatuk irányelvei ) lvashat. A tesztelés növeli a bizalmat a szftver minősége iránt, ha a tesztelés srán kevés hibát találunkvagy egyáltalán nem találunk hibát. Ha egy helyesen tervezett teszt sikeresen lefut, az csökkenti a rendszer általáns kckázati szintjét. Ha tesztelés srán találnak hibát, akkr azk kiküszöbölésével javul a szftverrendszer minősége. A krábbi prjektek tapasztalatait fel kell használni. A régebbi prjektekben talált hibák kiváltó kainak megértésével a flyamatk javíthatók, így kiküszöbölhetjük ezen hibák újbóli megjelenését, ezáltal javul a jövőbeni rendszerek minősége. Ez a minőségbiztsítás egyik területe. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 10 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv A tesztelés helye a minőségbiztsítási tevékenységek között van (a fejlesztési szabványkkal, képzéssel és hibaelemzéssel együtt). 1.1.5 Mennyi tesztelés elegendő? (K2) Ahhz, hgy eldönthessük, mennyi tesztelés elegendő, figyelembe kell vennünk a kckázati szintet, beleértve a technikai- és vállalati termékek, prjektek kckázatát valamint a prjektek időre és költségvetésre vnatkzó megkötéseit (A kckázatról bővebben az 5. részben.) A tesztelésnek elegendő infrmációt kell biztsítania a prjekt résztvevői számára, hgy megalapztt döntést hzhassanak a tesztelt szftver vagy rendszer kibcsátásával kapcslatban, a következő fejlesztési szakaszról vagy az ügyfelek számára történő átadásról. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 11 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 1.2 Mi a tesztelés? (K2) 30 perc Kifejezések Hibakeresés, követelmény, felülvizsgálat, teszteset, tesztelés, tesztelési cél. Háttér Az általáns felfgás szerint a tesztelés csak tesztek futtatásából áll, vagyis a szftver használatát, futtatását jelenti. Ez része a tesztelésnek, de a tesztelés nem csak ebből áll. Tesztelési tevékenységek a tesztfuttatás előtt és után is léteznek, ilyenek: teszttervezés- és irányítás, tesztelési feltételek meghatárzása, tesztesetek tervezése és az eredmények ellenőrzése, kilépési feltételek kiértékelése, jelentés készítése a tesztelési flyamatról és a tesztelt rendszerről, lezárás vagy befejezés (például egy tesztfázis végén). Tvábbá a tesztelés magában fglalja a dkumentumk felülvizsgálatát (beleértve a frráskódt is) valamint a statikus elemzést. A dinamikus teszt és a statikus teszt is alkalmazható hasnló célk elérésére; mindkettő nyújt infrmációkat a tesztelendő rendszer és a fejlesztési és tesztelési flyamatk javításáhz. Különböző tesztelési célkitűzések léteznek: megtalálni a hibákat ; növelni a minőséggel kapcslats megbízhatóságt, infrmációt nyújtani; megelőzni a hibákat. Az életciklus kezdetén átgndlt műszaki teszttervek (a tesztbázis ellenőrzése a tesztelés tervezésével ) segíthetnek annak megelőzésében, hgy hibák kerüljenek a kódba. A dkumentumk (például a követelmények) felülvizsgálata is segít annak megelőzésében, hgy hibák kerüljenek a kódba. A tesztelés különböző szempntk szerint történhet, melyek más-más célkra vnatkznak. A fejlesztői teszt (például a kmpnens-, integrációs- és rendszerteszt ) fő célja lehet például az, hgy a lehető legtöbb meghibásdást kiváltsa, ezzel a szftverhibákat felismerhetik és javíthatják. Az átvételi teszt fő célja annak igazlása lehet, hgy a rendszer az elvárásknak megfelelően működik, illetve megbiznysdni arról, hgy a rendszer teljesíti-e a követelményeket. Biznys esetekben a tesztelés fő célja a szftver minőségének elemzése lehet (hibák javítására irányuló szándék nélkül) azért, hgy a prjekt-résztvevők megtudják, hgy adtt időpntban milyen kckázattal járna a rendszer kiadása. A karbantartási teszt srán gyakran arra vnatkzó tesztet végeznek, hgy a váltztatásk srán nem kerültek-e be újabb hibák a rendszerbe.. A működési teszt fő célja a rendszer lyan jellemzőinek elemzése lehet, mint például a megbízhatóság vagy rendelkezésre állás. A hibakeresés és a tesztelés két különböző fgalm. A tesztelés kimutathatja a prgramhibák által kztt meghibásdáskat. A hibakeresés pedig egy fejlesztői tevékenység, mely srán felderítik a hibák kát, kijavítják a kódt és ellenőrzik, hgy a hibát megfelelően rvslták-e. Ezt követően egy tesztelő által végrehajttt ellenőrző teszttel biznysdnak meg arról, hgy a javítás eredményes vlt. A feladatk más-más felelősségi körbe tartznak: a tesztelést a tesztelők, a hibakeresést a fejlesztők végzik. A tesztelési flyamatt, és az ahhz tartzó tevékenységeket az 1.4. fejezet írja le. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 12 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 1.3 Általáns tesztelési alapelvek (K2) 35 perc Kifejezések Kimerítő teszt. Alapelvek Az elmúlt 40 évben száms tesztelési alapelvet dlgztak ki, melyek általáns iránymutatást nyújtanak az összes tesztelési frmára. 1. alapelv A tesztelés hibák jelenlétét jelzi Bár tesztelés kimutathatja a hibák jelenlétét, de azt nem képes igazlni, hgy nincsenek hibák. A teszteléssel csökken annak az esélye, hgy a szftverben felfedezetlen hibák maradnak, de ha nem találnak hibát, az nem annak a biznyítéka, hgy a rendszer tökéletes (értsd: valóban nincs benne hiba) 2. alapelv Nem lehetséges kimerítő teszt Kimerítő tesztelés azaz mindenre (a bemenetek és előfeltételek minden kmbinációjára) kiterjedő tesztelés a triviális eseteket leszámítva nem lehetséges. A kimerítő teszt helyett kckázatelemzést és priritáskat kell alkalmazni, ezáltal növelve a teszttevékenységek összpntsításának hatéknyságát. 3. alapelv Krai teszt A tesztelést a szftver vagy rendszerfejlesztési életciklusában a lehető legkrábban el kell kezdeni, és előre meghatárztt célkra kell összpntsítani. 4. alapelv Hibák csprtsulása A kiadást megelőző tesztelés srán a megtalált hibák többsége néhány mdulban van, vagy legalábbis ezen mdulk felelősek a működési hibák többségéért. 5. alapelv A féregirtó paradxn Ha mindig ugyanazkat a teszteket hajtjuk végre, akkr az azns a tesztkészlet egy idő után nem fg új hibákat találni. A féregirtó paradxn megjelenése ellen a teszteseteket rendszeresen felül kell vizsgálni, és új, eltérő teszteseteket kell írni annak érdekében, hgy a szftver vagy a rendszer különböző részei kerüljenek futtatásra, és ezáltal tvábbi prgramhibákat találhassanak. 6. alapelv A tesztelés függ a körülményektől (körülményfüggő) A tesztelést különböző körülmények esetén különbözőképpen hajtják végre. Például egy lyan rendszert, ahl a biztnság kritikus szempnt, másképp tesztelnek, mint egy e-kereskedelmi ldalt. 7. alapelv A hibátlan rendszer téveszméje A hibák megtalálása és javítása hasztalan, ha a kifejlesztett rendszer használhatatlan, és nem felel meg a felhasználók igényeinek, elvárásainak. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 13 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 1.4 A tesztelés alapvető flyamata (K2) 35 perc Kifejezések Ellenőrző teszt, újratesztelés, kilépési feltétel, incidens, regressziós teszt, tesztbázis, tesztelési feltétel, teszt-lefedettség, tesztadatk, tesztvégrehajtás, tesztelési napló, tesztterv, tesztelési eljárás, tesztelési alapelv, tesztelési stratégia, tesztkészlet, teszt összefglaló jelentés, tesztelési környezet Háttér A tesztelés leglátványsabb része a tesztek végrehajtása. A hatéknyság érdekében aznban a teszttervekben elegendő időt kell biztsítani a tesztterv elkészítésére, a tesztesetek tervezésére, a végrehajtásra való felkészülésre és az állapt értékelésére. A tesztelés alapvető flyamata a következő fő tevékenységekből áll: tervezés és irányítás; elemzés és tervezés; megvalósítás és végrehajtás; a kilépési feltételek értékelése és jelentés; teszt lezárása. Bár lgikailag egymás után következnek, a flyamat tevékenységei átfedhetik egymást, és párhuzamsan is flyhatnak. 1.4.1 Teszttervezés- és irányítás (K1) A teszttervezéssrán ellenőrzik a tesztfeladatkat, definiálják a teszt célját és a tevékenységeket annak érdekében, hgy elérjék a kitűzött célkat és elvégezzék a feladatkat. A tesztirányítás egy flyamatsan végzett tevékenység, mely srán összehasnlítják az aktuális flyamatt a tervvel, az adtt állaptról jelentést készítenek, amely tartalmazza a tervtől való eltéréseket. A tesztirányítás srán végrehajtják a prjekt feladatainak és céljainak eléréséhez szükséges feladatkat. A megfelelő irányítás érdekében a tesztet a teljes prjekt srán felügyelni kell. A teszttervezésénél figyelembe kell venni a felügyeletből és az irányításból származó visszajelzéseket. A teszttervhez és az irányításhz kapcslódó feladatkat a tananyag 5. része tartalmazza. 1.4.2 Tesztelemzés és terv (K1) A teszt elemzés és tervezés az a tevékenység, mely srán az általáns tesztelési célkból kézzelfgható tesztelési feltételeket és teszteseteket alakítanak ki. A teszt elemzéshez és tervezéshezhez a következő fő feladatk tartznak: A tesztbázis (mint például követelmények, felépítés, terv, interfészek) átnézése. A tesztbázis és a tesztelés tárgyának értékelése tesztelhetőség szempntjából. A tesztelési feltételek meghatárzása és pririzálása a tesztelemek, a specifikáció, a viselkedés és a struktúra elemzése alapján. Tesztesetek megtervezése és pririzálása. A tesztelési feltételek és a tesztesetek támgatásáhz szükséges tesztadatk meghatárzása. A tesztkörnyezet kialakításának megtervezése valamint a szükséges infrastruktúra és eszközök meghatárzása. 1.4.3 Teszt megvalósítása és végrehajtása (K1) ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 14 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv A teszt megvalósítása és végrehajtása az a tevékenység, mely srán meghatárzzák a tesztelési eljáráskat, vagy szkripteket a tesztesetek adtt srrendű kmbinálásával és a tesztvégrehajtásáhz szükséges tvábbi infrmációk felhasználásával kialakítják a tesztkörnyezetet, valamint futtatják a teszteket. A teszt megvalósításának és végrehajtásának fő feladatai: Tesztesetek fejlesztése, kivitelezése és pririzálása. Tesztelési eljárásk fejlesztése és pririzálása, tesztadatk létrehzása valamint pcinálisan a tesztelési alapkörnyezet elkészítése és autmatizált tesztszkriptek írása. Tesztkészletek létrehzása a tesztelési eljáráskból a hatékny tesztvégrehajtás érdekében. Annak ellenőrzése, hgy a tesztkörnyezetet megfelelően kialakíttták. A tesztelési eljárásk a megtervezett srrend szerinti végrehajtása manuálisan vagy tesztvégrehajtási eszközökkel. A tesztvégrehajtás eredményeinek naplózása és a tesztelt szftver, a teszteszközök és a tesztelési környezet aznsítóinak és verzióinak feljegyzése. A kaptt és az elvárt eredmények összehasnlítása. Az eltérések incidensként való jelentése és elemzése a kiváltó k felderítése érdekében (például hiba vlt a kódban, meghatárztt tesztadatkban, a teszt dkumentumban, vagy a teszt végrehajtásában történt tévedés). A tesztelési tevékenység ismétlése minden eltérésnél a lépések megtétele után. Például: az előzetesen sikertelen teszt újrafuttatása a javítás ellenőrzésére (ellenőrző teszt), a javíttt teszt végrehajtása és/vagy tesztek végrehajtása annak ellenőrzésére, hgy nem kerültek-e hibák a szftver váltzatlanul hagytt területeibe, illetve hgy a hiba javításával nem jelentek-e meg tvábbi hibák (regressziós teszt). 1.4.4 A kilépési feltételek értékelése és jelentés (K1) A kilépési feltételek értékelése az a tevékenység, mely srán a teszt végrehajtását elemzik a meghatárztt célkhz visznyítva. Ezt minden tesztelési szintre el kell végezni. A kilépési feltétel értékelésének fő feladatai: A tesztelési naplók és a tesztelési tervezetben fglalt kilépési feltételek összehasnlítása. Annak megállapítása, hgy szükséges-e tvábbi tesztek futtatása, vagy a kilépési feltételek megváltztatása. Teszt összefglaló jelentés elkészítése a prjektben résztvevőknek. 1.4.5 Teszt lezárása (K1) A teszt lezárása srán adatkat kell gyűjteni a végrehajttt tesztekre vnatkzóan a tapasztalatk, a tesztelési környezet, a tények és számk véglegesítése / értelmezése céljából. Például akkr, ha kiadnak egy szftverrendszert, végrehajtanak (vagy törölnek) egy teszt prjektet, eljutnak egy fntsabb szakaszig vagy végeznek egy karbantartó frissítéssel. A teszt lezárásának fő feladatai: 1.1 Annak ellenőrzése, hgy a tervezett átadandókból mit sikerült ténylegesen átadni, az incidens jelentések lezárása vagy a váltztatáskról szóló feljegyzések elkészítése a le nem zárt jelentésekhez, valamint a rendszer átvételéről szóló dkumentáció elkészítése. A tesztelési környezet, és a tesztelési infrastruktúra véglegesítése és archiválása későbbi felhasználásra. A tesztelési környezet átadása a karbantartást végző szervezet részére. A tapasztalatk feldlgzása a jövőbeni termékekhez vagy prjektekhez valamint a tesztelési flyamat érettségének fejlesztéséhez. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 15 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 1.5 A tesztelés pszichlógiája (K2) 35 perc Kifejezések Hibasejtés, függetlenség. Háttér A tesztelés és a felülvizsgálat a szftverfejlesztéstől eltérő gndlkdásmódt kíván. A megfelelő gndlkdásmód birtkában a fejlesztők képesek a saját kódjaik tesztelésére, általában aznban ezt a feladatt tesztelőre bízzák, hgy az erőfrrásk jbban összpntsuljanak. Ez tvábbi előnyöket is jelent, nevezetesen független, képzett, prfesszinális tesztelési erőfrráskat. Független tesztelést a tesztelés bármely szintjén lehet alkalmazni. Biznys fkú függetlenséggel (a szerzői elfgultság kizárásával) gyakran hatéknyabban találják meg a hibákat és a meghibásdáskat. A függetlenség aznban nem helyettesíti a jártasságt, a fejlesztők saját kódjukban sk hibát hatéknyan megtalálnak. A függetlenség néhány szintje a következőképpen definiálható: A tesztelt szftver fejlesztője (fejlesztői) által tervezett tesztek (alacsny szintű függetlenség). Más(k) által tervezett tesztek (például valaki a fejlesztői csapatból). Más szervezeti csprthz (például egy független tesztelő csapathz) tartzó személy(ek) vagy tesztelési szakértők (például használhatósági vagy teljesítményteszt) által tervezett tesztek. Más szervezethez vagy céghez tartzó személy(ek) által tervezett tesztek (utsurcing vagy egy külső testület tanúsítványa). Az embereket és a prjekteket a célk viszik előre. Az emberek hajlamsak hzzáigazítani terveiket a menedzsment vagy más prjektrésztvevők által meghatárztt célkhz, erre példa a hibák megtalálása vagy annak ellenőrzése, hgy a szftver jól működik. Ezért fnts a tesztelési célk pnts, érthető meghatárzása. A tesztelés srán tapasztalt meghibásdásk feltárását gyakran a termék vagy a szerző elleni kritikának fgják fel. Emiatt a tesztelést gyakran destruktív tevékenységnek tekintik, annak ellenére, hgy valójában knstruktív a termék kckázatának kezelésében. Egy rendszer prgramhibáinak kutatása kíváncsiságt, szakszerű pesszimizmust, kritikus szemléletet, a részletekre való dafigyelést, a fejlesztőkkel való jó kmmunikációt és a hibasejtéseket megalapzó tapasztalatt kíván. A hibák, prgramhibák knstruktív szemléletű közlésével elkerülhetők a tesztelők és elemzők, tervezők és fejlesztők közötti ellentétek. Ez érvényes a felülvizsgálatra és a tesztelésre is. A tesztelőnek és a tesztelés vezetőjének a hibákkal, előrehaladással és kckázatkkal kapcslats tárgyilags, knstruktív kmmunikáció érdekében jó interpersznális képességekkel kell rendelkeznie. A hibákkal kapcslats infrmáció a szftver vagy dkumentum szerzőjének segíthet a képességei fejlesztésében. A tesztelés srán megtalált és javíttt hibák a későbbiekben időt és pénzt takarítanak meg, és csökkentik a kckázatkat. Kmmunikációs prblémák előfrdulhatnak, különösen akkr, ha a tesztelőket csak a hibákról szóló rssz hírek hzóinak tekintik. Léteznek visznt különböző módszerek arra, hgyan javítsuk a tesztelők és a többiek közti kmmunikációt és kapcslatt: Együttműködő szándékkal indítsunk hadakzás helyett felhívni a figyelmet a közös célra: a minél jbb minőségű rendszerre. Semlegesen, tárgyilagsan kell előadni az eredményeket, a kidlgzó személy kritizálása nélkül; vagyis például bjektív és tárgyilags incidens jelentés illetve felülvizsgálat eredmény jelentés készítése. Meg kell próbálni megérteni azt, hgy hgyan érez a másik fél, és miért lyank a reakciói, amilyenek. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 16 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Meg kell biznysdni arról, hgy a másik fél helyesen értette a közlendőnket és visznt. Hivatkzásk 1.1.5 Black, 2001, Kaner, 2002 1.2 Beizer, 1990, Black, 2001, Myers, 1979 1.3 Beizer, 1990, Hetzel, 1988, Myers, 1979 1.4 Hetzel, 1988 1.4.5 Black, 2001, Craig, 2002 1.5 Black, 2001, Hetzel, 1988 ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 17 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 2 Tesztelés a szftver életciklusán át (K2) 115 perc Tanulási célk a Tesztelés a szftver életciklusán át témában A célk azt határzzák meg, hgy a tanuló az egyes mdulk befejezése után mit lesz képes végrehajtani. 2.1 Szftverfejlesztési mdellek (K2) TC-2.1.1 A fejlesztés, a tesztelési tevékenységek és a fejlesztési életciklus prjekt-termékei közötti viszny megértése, példák felhzása a prjekt- és termékjellemzők és szempntk alapján (K2). TC-2.1.2 Annka felismerése, hgy a szftverfejlesztési mdelleket igazítani kell a prjektek szempntjaihz és a termékek jellemzőihez. (K1) TC-2.1.3 A különböző szintű tesztelések megindklása, a helyes tesztelés jellemzőinek felidézése bármilyen életciklus mdellben. (K1) 2.2 Tesztelési szintek (K2) TC-2.2.1 A tesztelés különböző szintjeinek összehasnlítása: fő célk, a tesztelés tipikus eszközei, a tesztelés tipikus területei (pl. funkcinális vagy strukturális) és az ezekhez tartzó prjekttermékek, a tesztet végző személyek, az aznsítandó hibák és meghibásdásk. (K2) 2.3 Teszttípusk (K2) TC-2.3.1 Négy szftverteszt-típus összehasnlítása (funkcinális, nem-funkcinális, strukturális és váltzáshz kapcslódó) példákn keresztül. (K2) TC-2.3.2 Annak felismerése, hgy minden tesztelési szinten létezik funkcinális és strukturális teszt. (K1) TC-2.3.3 A nemfunkcinális követelményeken alapuló nemfunkcinális teszttípusk aznsítása és bemutatása. (K2) TC-2.3.4 Egy szftverrendszer strukturális vagy architekturális elemzésén alapuló teszttípusk aznsítása és bemutatása. (K2) TC-2.3.5 Az ellenőrző teszt és a regressziós teszt céljának bemutatása. (K2) 2.4 Karbantartási teszt (K2) TC-2.4.1 A karbantartási teszt (már létező rendszer tesztelése) és az új alkalmazásk tesztelésének összehasnlítása tekintettel a teszttípuskra, a tesztelést indkló tényezőkre és a tesztek mennyiségére. (K2) TC-2.4.2 A karbantartási teszt szükségességét indkló tényezők meghatárzása (módsítás, migráció és kivnás). (K1) TC-2.4.3 A regressziós teszt és a hatáselemzés karbantartásban való szerepének bemutatása.. (K2) ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 18 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 2.1 Szftverfejlesztési mdellek (K2) 20 perc Kifejezések Dbzs szftver (COTS), iteratív-inkrementális fejlesztési mdell, validáció, verifikáció, V-mdell. Háttér Mindentől elszigetelt tesztelés nem létezik, a tesztelési tevékenységek a szftverfejlesztési tevékenységekhez kapcslódnak. A különböző fejlesztési életciklus mdelleknél különböző tesztelési megközelítésekre van szükség. 2.1.1 V-mdell (szekvenciális fejlesztési mdell) (K2) Bár a V-mdellnek többféle váltzata létezik, az általáns V-mdellnél négy tesztelési szintet alkalmaznak, melyek a négy fejlesztési szinthez tartznak. A jelen tananyagban a következő négy szintet használjuk: kmpnens (egység) teszt; integrációs teszt; rendszerteszt; átvételi teszt. A gyakrlatban a prjekttől és a szftverterméktől függően a V-mdellnek lehet ennél több, kevesebb, vagy eltérő fejlesztési és tesztelési szintje. Például a kmpnensteszt után következhet kmpnens integrációs teszt vagy a rendszerteszt után rendszer integrációs teszt. A fejlesztés srán létrehztt szftvertermékek (mint vállalati frgatókönyvek vagy használati esetek, követelmény-specifikációk, tervdkumentumk és kód) gyakran képezik a tesztelés alapját egy vagy több tesztelési szinten. Az általáns szftvertermékekre referencia az integrált képességi-érettségi mdell (CMMI) vagy a szftver életciklus flyamatkat leíró szabványban ( Sftware life cycle prcesses,ieee/iec 12207). A verifikációt és a validációt (és a krai műszaki teszttervezést) a szftver termékek fejlesztése alatt lehet elvégezni. 2.1.2 Iteratív-inkrementális fejlesztési mdellek (K2) Az iteratív-inkrementális fejlesztés a követelmények meghatárzásának, a tervezésnek, a rendszer felépítésének és tesztelésének flyamata, melyet több rövidebb fejlesztési ciklusban hajtanak végre. Példák: prttípus készítés, gyrs alkalmazásfejlesztés (RAD), Ratinal Unified Prcess (RUP) és agilis fejlesztési mdellek. Az iteráció srán létrehztt rendszert több szinten lehet tesztelni, a fejlesztés részeként. A már előzőleg kifejlesztettekhez kiegészítés hzzáadásával növekvő részrendszer jön létre, amelyet szintén tesztelni kell. A regressziós teszt szerepe minden iterációnál egyre fntsabb. A verifikációt és validációt minden kiegészítésnél végre lehet hajtani. 2.1.3 Tesztelés egy életciklus mdellen belül (K2) Minden életciklus mdellben megfgalmazhatók a megfelelő tesztelés jellemzői. Minden fejlesztési tevékenységhez tartzik egy tesztelési tevékenység. Minden tesztelési szint rendelkezik az adtt szintre jellemző tesztelési célkitűzésekkel. A tesztek elemzését és tervezését az adtt tesztelési szinthez tartzó fejlesztési tevékenység srán kell megkezdeni. A tesztelőket be kell vnni a dkumentációk felülvizsgálatába, amint elkészültek az első vázlatk a fejlesztési életciklusban. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 19 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv A prjekt jellemzőitől és a rendszer felépítésétől függően a tesztelési szinteket kmbinálhatjuk vagy átrendezhetjük. Egy dbzs szftver valamely rendszerbe való integrációja esetén például a vevő végrehajthat rendszer-szintű integrációs tesztet (például integráció az infrastruktúrába és más rendszerekbe, vagy a rendszer bevezetése) vagy átvételi tesztet (funkcinális és/vagy nemfunkcinális, felhasználói és/vagy működési teszt). ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 20 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv 2.2 Tesztelési szintek (K2) 40 perc Kifejezések Alfa teszt, béta teszt, kmpnensteszt (ismert még az egység-, mdul-, vagy prgramteszt kifejezésekkel), meghajtó, tesztelés valós környezetben, funkcinális követelmény, integráció, integrációs teszt, nemfunkcinális követelmény, rbsztussági teszt, csnk, rendszerteszt, tesztelési szint, teszt-vezérelt fejlesztés, tesztkörnyezet, felhasználói átvételi teszt. Háttér Minden tesztelési szint esetén beszélhetünk a következőkről: a tesztelés általáns célja, a tesztesetek (a tesztbázis) létrehzásáhz referenciaként használt termék(ek), a tesztelés tárgya (mit tesztelnek), a megtalálandó hibák és meghibásdásk, a tesztelési alapkörnyezet követelményei és az eszköztámgatás, a jellemző megközelítések és felelősségi körök. 2.2.1 Kmpnensteszt (K2) A kmpnensteszt hibákat keres az önállóan tesztelhető szftverekben (pl. mdulk, prgramk, bjektumk, sztályk), és ellenőrzi működésüket. A fejlesztési életciklus körülményeitől és a rendszertől függően a rendszer többi részétől elkülönítve is végezhető. Használhatók csnkk, meghajtók és szimulátrk. A kmpnensteszt magában fglalhatja a funkcinalitás valamint meghatárztt nem-funkcinális jellemzők tesztelését, mint például az erőfrráskkal kapcslats viselkedés (például memóriaszivárgás), rbsztussági teszt illetve strukturális teszt (pl. elágazás lefedettség). A teszteseteket termékekből készítik, mint apl. Kmpnens specifikációja, a szftverterv, vagy adatmdell-specifikáció. A kmpnensteszt srán általában hzzáférnek a tesztelt kódhz, és felhasználják a fejlesztési környezet által nyújttt támgatást, mint például egy egységteszt keretrendszer vagy hibakereső eszköz; és a gyakrlatban általában bevnják a fejlesztőt, aki a kódt írta. A hibákat általában már a megtaláláskr javítják anélkül, hgy az incidensről jegyzőkönyv készülne. A kmpnensteszt egyik megközelítése, hgy a teszteseteket a kódlás előtt készítik el és autmatizálják. Ezt nevezik először a teszt megközelítésnek vagy teszt-vezérelt fejlesztésnek. Ez a megközelítés rendkívül iteratív, és arra épül, hgy ciklikusan fejlesztik a teszteseteket, majd létrehzzák és integrálják a kód kisebb részeit, s addig flytatják a kmpnensteszteket, míg azk sikeresen lefutnak. 2.2.2 Integrációs teszt (K2) Az integrációs teszt srán a kmpnensek közötti interfészeket, egy rendszer más részeivel mint az perációs rendszer, fájlrendszer, hardver való kölcsönhatásait vagy a rendszerek közötti interfészeket tesztelik. Az integrációs tesztnek több szintje lehet, és különböző méretű lehet a tesztelési tárgya is. Például: 1. A kmpnens integrációs teszttel a szftverkmpnensek közötti kölcsönhatáskat tesztelik; a kmpnensteszt után végzik; 2. A rendszer integrációs teszttel a különböző rendszerek közötti kölcsönhatáskat tesztelik; a rendszerteszt után végezhetik. Ebben az esetben előfrdulhat, hgy a fejlesztő szervezet csak az interfész egyik ldalát kntrllálja, így a váltztatásk rnthatják a stabilitást. A munkaflyamatként kivitelezett vállalati flyamatk rendszerek egész srát fglalhatják magukba. A platfrmkat átölelő prblémák nagy jelentőséggel bírhatnak. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 21 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Minél nagybb az integráció mértéke, annál nehezebb egy adtt kmpnenshez vagy rendszerhez visszavezetni a meghibásdáskat, ez pedig magasabb kckázati faktrt jelenthet. A szisztematikus integrációs stratégiák alapulhatnak a rendszer felépítésén (mint például felülről lefelé vagy lentről felfelé), a funkcinális feladatkn, tranzakció-feldlgzási srrenden vagy a rendszer-, illetve a kmpnens egyéb jellemzőin. Annak érdekében, hgy a későn felfedezett hibák kckázata minimális legyen, az integrációnak inkrementálisnak kell lennie, nem pedig a nagy bumm teszt (big bang) módszernek. Egyes nem-funkcinális jellemzők tesztelése (pl. teljesítmény) is része lehet az integrációs tesztnek. Az integráció minden fázisában a tesztelők kizárólag magára az integrációra kncentrálnak. Például A mdul és B mdul egyesítésénél a két mdul közötti kmmunikáció tesztelésére figyelnek, nem pedig az egyes mdulk működésére. A funkcinális és a strukturális megközelítés egyaránt alkalmazható. Ideális esetben a tesztelők ismerik a rendszer felépítését, és beflyással bírnak az integráció tervezésére. Ha az integrációs teszteket még a kmpnensek vagy rendszerek kifejlesztése előtt megtervezik, akkr ezeket a leghatéknyabb tesztelésnek megfelelő srrendben lehet kifejleszteni. 2.2.3 Rendszerteszt (K2) A rendszerteszt egy teljes rendszer/termék viselkedésével fglalkzik, mely viselkedést a fejlesztési prjektben vagy prgramban határzták meg. A rendszertesztnél a tesztkörnyezetnek a lehető legjbban kell hasnlítania a végfelhasználási vagy termelési környezetre, hgy minél kisebb esély legyen arra, hgy a környezet-specifikus meghibásdáskat nem találja meg a teszt. A rendszerteszt magában fglalhat a kckázatkn és/vagy követelmény-specifikációkn, vállalati flyamatkn, használati eseteken alapuló vagy a rendszer viselkedésére, az perációs rendszerrel való kölcsönhatáskra, rendszer-erőfrráskra vnatkzó tvábbi magas szintű leíráskn alapuló teszteket. A rendszerteszt srán a rendszer funkcinális és nemfunkcinális követelményeit is vizsgálni kell. A követelmények szöveges-, és/vagy mdellek frmájában is megjelenhetnek. A tesztelőknek lyan követelményeket is figyelembe kell venniük, melyek csak részben, vagy egyáltalán nincsenek dkumentálva. A funkcinális követelmények rendszertesztje a tesztelendő rendszer szempntjából legmegfelelőbb specifikáció alapú (fekete dbz) technikák alkalmazásával kezdődik. Például döntési tábla hzható létre a vállalati szabálykban leírt hatásk kmbinációira. Ezután strukturális technikák (fehérdbz) alkalmazhatók a tesztelés alapsságának elemzésére egy strukturális elem, mint pl. a menüstruktúra vagy a webldal-navigáció tekintetében. (Lásd: 4. rész) Gyakri, hgy a rendszertesztet független tesztcsapat hajtja végre.. 2.2.4 Átvételi teszt (K2) Az átvételi teszt gyakran a vevők vagy egy rendszer használóinak feladata; de más prjektrésztvevők is bevnhatók ezen tevékenységbe. Az átvételi teszt célja a rendszerbe, a rendszer egyes részeibe vagy a rendszer adtt nemfunkcinális jellemzőibe vetett bizalm megteremtése. Az átvételi teszt elsődlegesen nem a hibák megtalálására irányul. Az átvételi teszt célja a rendszer kibcsáthatóságának és használhatóságának az elemzése, de nem minden esetben ez a tesztelés utlsó szintje. Egy rendszer átvételi tesztje után következhet például egy nagybb méretű rendszer-integrációs teszt. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 22 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület
ISTQB Certified Tester Fundatin Level Alapszintű képesítés hivatals tanterv Az átvételi teszt több szinten is megjelenhet, például: Egy dbzs szftvertermék átvételi tesztje történhet az installálásakr vagy integrálásakr. Egy kmpnens használhatóságának átvételi tesztje történhet a kmpnensteszt flyamán. Új funkcinális kiegészítés átvételi tesztje megelőzheti a rendszertesztet. Az átvételi teszt tipikus frmái a következők: Felhasználói átvételi teszt Általában a rendszer (megrendelő) vállalati felhasználók általi használatra való alkalmasságát ellenőrzi. Működési (átvételi) teszt A rendszer elfgadása a rendszeradminisztrátrk részéről, ide tartzik: mentés/helyreállítás tesztelése; összemlás utáni visszaállítás; felhasználói menedzsment; karbantartás feladatai; biztnsági rések peridikus ellenőrzése. Szerződésre és előíráskra vnatkzó átvételi teszt Megrendelésre kifejlesztett szftverek esetében a szerződésre vnatkzó átvételi tesztet a szerződés átvételi kritériumaira hajtják végre. Az átvételi kritériumkat a szerződés megkötésekr kell meghatárzni. Az előíráskra vnatkzó átvételi tesztet végezhetik betartandó előírásk alapján, ilyenek lehetnek például közigazgatási-, jgi- vagy biztnsági rendelkezések. Alfa és béta (valós környezetben történő) teszt A piacra dlgzó vagy dbzs szftvereket előállító fejlesztők gyakran szeretnének visszajelzéseket kapni a ptenciális, vagy meglévő piaci ügyfeleiktől, még mielőtt a szftverterméket kereskedelmi frgalmba hznák. Az alfa tesztelést a fejlesztő szervezetnél végzik. A béta, vagy valós környezetben történő tesztelést a felhasználók saját munkaállmáskn flytatják. Mindkettőt ptenciális ügyfelek végzik, nem pedig a termék fejlesztői. Az egyes szervezetek különböző megnevezéseket használhatnak, mint működési átvételi teszt és helyszíni átvételi teszt, azkra a rendszerekre, melyeket az ügyfélnek történő átadás előtt és után is tesztelnek. ISTQB CTFL Versin 2007 Magyar nyevű tanterv 2.0 ldal: 23 / 70 2010. március 15 2009 Magyar Szftvertesztelői Tanács egyesület