Testavimas Pareng Vaidas Jakutis Turinys o o o

  • Slides: 13
Download presentation
Testavimas Parengė: Vaidas Jakutis

Testavimas Parengė: Vaidas Jakutis

Turinys: o o o o Kas yra testavimas? Testavimo aktualumas. Testavimo procesas. Testavimo lygmenys.

Turinys: o o o o Kas yra testavimas? Testavimo aktualumas. Testavimo procesas. Testavimo lygmenys. Testavimo polemika. Išvados. Šaltiniai.

Testavimas? ? ? n n n Programinės įrangos(software‘o) testavimas yra skirtas nustatyti kompiuterių programinės

Testavimas? ? ? n n n Programinės įrangos(software‘o) testavimas yra skirtas nustatyti kompiuterių programinės įrangos kokybei. Testavimas – tai empirinis techninis tyrimas atliekamas tam, kad būtų galima suteikti informaciją apie testuojamo produkto ar paslaugos kokybę aplinkoje, kurioje tas produktas ar paslauga turėtų veikti. Kokybė čia nėra apibrėžiama kaip absoliutus „dydis“, o kaip turintis tam tikrą vertę, tam tikrai asmenų grupei. Dėl to testavimas niekada iki galo negali įvertinti pasirinktos programinės įrangos teisingumo. Testavimas teikia kritiką ir palyginimą apie produkto būseną ir elgesį, kuris yra nustatytas produkto specifikacijoje.

Testavimo aktualumas n n Per visą savo egzistenciją software‘as darosi vis sudėtingesnis ir didesnės

Testavimo aktualumas n n Per visą savo egzistenciją software‘as darosi vis sudėtingesnis ir didesnės apimties. Tai pat jis tampa vis įvairesnio pobūdžio. Skiriasi tiek vartotojų auditorija, kuriai produktas yra skirtas, tiek pati produktų paskirtis(pvz. Kompiuteriniai žaidimai, bankinės sistemos ir t. t. ). Kai organizacija sukuria produktą ar jį užsako, taip investuodama į tai didžiules pinigų sumas, ji be abejo, nori įvertinti ar produktas bus priimtinas jo „paskutiniesiems“ vartotojams, auditorijai, kuriai jis buvo kurtas, jos pirkėjams ir kitiems juo besinaudosiantiems asmenims. Būtent testavimas ir yra tas procesas, kurio metu gaunamas norimas įvertinimas.

Testavimo aktualumas n n n Akivaizdus materialus testavimo aktualumas: pvz. Pradinėje kūrimo stadijoje ištestuoto

Testavimo aktualumas n n n Akivaizdus materialus testavimo aktualumas: pvz. Pradinėje kūrimo stadijoje ištestuoto produkto klaidų(bug‘ų) taisymas kainuoja 1 Lt, paskutinėse kūrimo stadijose – 10 Lt, o kai jau produktas pasiekęs savąją auditoriją – 100 lt. Puikus to pavyzdys – 2002 m. JAV ekonomikai tokie bug‘ai kainavo $59, 5 bilijonus. Daugiau nei trečdaliu ši suma galėjo būti mažesnė, jei produktai būtų buvę gerai ir kokybiškai ištestuoti.

Testavimo procesas n n n Testavimo procesas gali būti vykdomas keliais skirtingais būdais. Dažniausiai

Testavimo procesas n n n Testavimo procesas gali būti vykdomas keliais skirtingais būdais. Dažniausiai tai atlieka specialiai tam surinkta žmonių grupė – testuotojai, pro kuriuos turi „praeiti“ produktas prieš pasiekdamas vartotoją. Vienas iš testavimo modelių: sukuriamas produktas, testuojama, taisoma, produktas atiduodamas vartotojui.

Testavimo procesas n n Toks testavimas dažnai susiduria su laiko stoka. Jei jo turima

Testavimo procesas n n Toks testavimas dažnai susiduria su laiko stoka. Jei jo turima pakankamai ir produktas nevėluoja, yra laiko iki kol turėtų būti atiduotas vartotojui, po pataisymo vykdomas ir atrasis testavimas(retest‘as). Trečiojo testavomo etapo dažniausiai nepasiekiama dėl laiko stokos. Kitas testavimo proceso modelis: prasidėjus projektui, prasideda ir testavimas. Vyksta viso projekto kūrimo metu, iš karto yra komunikuojama su programuotojais, išsiaiškinami ir taisomi bug‘ai.

Testavimo lygmenys n n „Skyriaus“ testavimas(Unit testing) – testuojamas pats mažiausias software‘o komponentas ar

Testavimo lygmenys n n „Skyriaus“ testavimas(Unit testing) – testuojamas pats mažiausias software‘o komponentas ar modulis. Testuojamas kiekvienas toks „skyrius“ tam, kad būtų patikrinta, ar kiekvienam iš komponentų yra tinkamai įdyvendintas jo dizainas. Įkomponavimo testavimas(Integration testing) – ieškoma integruotų elementų tarpusavio sąveikos ir ryšių defektų. Taip pat testuojama kaip sąveikauja didesnės jau ištestuotų elementų grupės su architektūriniu sistemos dizainu.

Testavimo lygmenys n n Sistemos testavimas(System testing) – testuojama iki galo integruota sistema, kad

Testavimo lygmenys n n Sistemos testavimas(System testing) – testuojama iki galo integruota sistema, kad būtų patikrinta, kad ji atitinka visus specifikacijoje nurodytus reikalavimus. Sistemos integracijos testavimas(System integration testing) – testuojama ar veiks ir kaip veiks(ar tenkins visus nurodymus) sistema, kai ją perims tretieji asmenys ar ji tiesiog bus įdiegta kitoje platformoje.

Testavimo polemika n n n Kas sudaro atsakingą testavimą? – Kontekstinio testavimo atstovai teigia,

Testavimo polemika n n n Kas sudaro atsakingą testavimą? – Kontekstinio testavimo atstovai teigia, kad nėra „geriausių“ testavimo metodų. Jie teigia, kad testavimas – tai tam tikrų įgūdžių rinkinys, leidžiantis testuotojui pasirinkti ar sukurti testavimo metodus, kurie būtų tinkamiausi kiekvienu atveju. Dinamika prieš tradiciją. – ar testuotojai turėtų dirbti neapibrėžtomis ir nuolat kintančiomis sąlygomis, ar turėtų siekti brandaus ir laiko patikrinto testavimo proceso. Nuolat besikeičiantis testavimo procesas ypač yra išpopulerėjęs komercijos srityje. Kas stebi stebėtoją? – problema ta, kad bet kokia stebėjimo forma kartu yra ir sąveika, kuri gali paveikti testavimo procesą.

Testavimo polemika n n n „Atradimai“ prieš iš anksto parengtus scenarijus – testai turėtų

Testavimo polemika n n n „Atradimai“ prieš iš anksto parengtus scenarijus – testai turėtų būti parengiami tuo metu, kai vyksta testavimo procesas ar turėtų būti parašyti iš anksto, paskui tik pritaikant juos kiekvienai situacijai? Rankinis testavimas prieš automatinį. – Viena pusė teigia, kad testai turėtų būti pilnai automatizuoti ir neturėtų būti jokio „rankų“ darbo. Kiti teigia, kad „rankų“ darbo procesas nors ir brangesnis, bet kiekviena sistema turi būti „paliesta“ gyvai, o ne vien automatizuota. Baigtinis produktas ar procesas. – Iki šiol yra nesutariama, kada turi prasidėti testavimo procesas. Ar jis turi vykti nuo pat sistemos kūrimo pradžios ir vykti visą laiką, ar sistema turėtų būti testuojama, jau kai yra sukurta.

Išvados Programinės įrangos testavimas šiuolaikiniame pasaulyje yra neabejotinai būtinas. Be šio proceso ir jį

Išvados Programinės įrangos testavimas šiuolaikiniame pasaulyje yra neabejotinai būtinas. Be šio proceso ir jį atliekančių žmonių neapsieina nei viena šiuolaikinė IT kompanija. Testuotojas yra tarsi stebėtojas. Jis nesukuria nieko naujo, nieko nekeičia pats. Jis tiesiog ima kontekstą ir kritikuoja, kas jame negerai, neveikia, netinka, neturėtų būti. Testavimo procesas yra būtinas, norint pasiekti kuo geresnius rezultatus ir norint, išleidus produktą, patirti kuo mažiau problemų su jo veikimu.

Šaltiniai: • http: //www. google. lt • http: //lt. wikipedia. org • Software errors

Šaltiniai: • http: //www. google. lt • http: //lt. wikipedia. org • Software errors cost U. S. economy $59. 5 billion annually, NIST report • Gelperin, D. ; B. Hetzel (1988). "The Growth of Software Testing". • Laycock, G. T. (1993). "The Theory and Practice of Specification Based Software Testing".