Upload
mercer
View
106
Download
7
Embed Size (px)
DESCRIPTION
Programų sistemų testavimas. Aistė Stikliūtė [email protected] http ://web.vu.lt/mif/a.stikliute +370 604 17281 VU MIF Programų sistemų katedra. Testavimo dokumentacija. Testavimo valdymo dokument ų hierarchija Testavimo vizija / gairės Testavimo strategija Testavimo planas - PowerPoint PPT Presentation
Citation preview
Programų sistemų testavimas
Aistė Stikliūtė[email protected]
http://web.vu.lt/mif/a.stikliute+370 604 17281
VU MIFProgramų sistemų katedra
Testavimo dokumentacija
• Testavimo valdymo dokumentų hierarchija• Testavimo vizija/gairės• Testavimo strategija• Testavimo planas• Jau aptarta:– Testavimo atvejai– Defektų aprašai– Testavimo ataskaitos
Testavimo valdymo dokumentų hierarchija
• Testavimas gali būti valdomas skirtingais lygmenimis:– Organizacijos/korporacijos lygmenyje– Programos lygmenyje– Individualaus projekto lygmenyje– Projekto etapo lygmenyje
Testavimo valdymo dokumentų hierarchija
• Organizacijos/korporacijos lygmenyje:– Testavimo vizija/gairės– Apibrėžimas, kaip testavimas bus vykdomas visoje
organizacijoje• Testavimo filosofija, procesas bendrais bruožais
Testavimo valdymo dokumentų hierarchija
• Programos lygmenyje:– Testavimo strategija– Vienas ar keli projektai, paprastai susiję:• Pvz., skirtingos strategijos investiciniams ir palaikymo
projektams
– Laikomasi vizijoje pateiktų gairių
Testavimo valdymo dokumentų hierarchija
• Individualaus projekto lygmenyje:– Projekto testavimo planas– Detalizuojami konkretaus projekto testavimo
klausimai– Laikomasi atitinkamos testavimo strategijos
Testavimo valdymo dokumentų hierarchija
• Projekto etapo lygmenyje:– Projekto etapo testavimo planas– Etapas gali būti iteracija ar testavimo lygmuo– Laikomasi projekto testavimo plano
Testavimo valdymo dokumentų hierarchija
Testavimo vizija/gairės
Testavimo strategija
(Proj1, Proj2)
Projekto testavimo planas(Proj1)
Proj.etapų testavimo planai
(Proj1)
Projekto testavimo planas (Proj2)
Proj.etapų testavimo planai
(Proj2)
Testavimo strategija
(Proj3)
Projekto testavimo planas(Proj3)
Testavimo valdymo dokumentų hierarchija
• Tokio lygio hierarchija būdinga didelėms organizacijoms / dideliems projektams
• Realybėje pritaikoma pagal poreikius:– Dažniausiai būna projekto testavimo planas– Siekiant brandaus proceso įvedama vizija ir
strategija/strategijos– Didelis projektas paprastai skirstomas į etapus su
savais testavimo planais
Pasikartojam
Testavimo vizija/gairės
Testavimo strategija
Projekto testavimo planas
Projekto etapo testavimo planas
Testavimo vizija/gairės
• Testavimo vizija/gairės – naudojama nedažnai• Daug organizacijų turi kokybės politiką– Minima, ką turi pasiekti testavimas
• Kitos turi organizacijos misijos aprašymą– Įtraukia testavimą ir kokybę, a la “Visos sistemos
turi būti pasiekiamos 24/7”
Testavimo vizija/gairės
• Testavimo vizijos/gairių apibrėžimo privalumai:– Akivaizdžiai matomas organizacijos dėmesys,
resursų skyrimas testavimui– Bazinių procesų apibrėžimas– Siektino kokybės lygio apibrėžimas– Standartizuojamas skirtingų projektų organizacijos
viduje testavimas – procesas, šablonai, įrankiai
Kas rašoma testavimo vizijoje/gairėse?
• Standarto nėra. Galimos temos:– Kas įeina į testavimą (apimtis)– Testavimo terminų apibrėžimai– Naudojamas testavimo procesas– Bendri testavimo standartai ir kriterijai (gali būti
suklasifikuoti pagal projekto dydį, svarbą)– Naudojami testavimo įrankiai– Kaip matuojamas testavimo efektyvumas/vertė– PĮ kūrimo ir testavimo gyvavimo ciklų identifikavimas– Proceso gerinimo metodai (pvz., mokymai, apklausos)
Testavimo vizija/gairės
• Apibendrinimas:– Testavimo vizija/gairės aprašo:• ko organizacija tikisi iš testavimo • kaip organizacija palaiko testavimą
– Testavimo vizija/gairės yra bendros, turi daugmaž tikti visiems organizacijos projektams
Testavimo strategija
• Bendras testavimo aprašymas:– Organizacijai (detalesnis, nei vizija/gairės)– Produktų/projektų grupei– Konkrečiam projektui/produktui– Konkrečiam padaliniui
Testavimo strategija
• Jei rašomos strategijos atskiriems projektams/produktams, patogu susikurti ir naudoti šabloną– Gali būti net keli skirtingi šablonai vienoje
organizacijoje• Pvz., visų el. savitarnos strategijų šablonas:
– El. bankininkystės strategija– Tel. ryšio savitarnos strategija– El. poliklinikos strategija
Testavimo strategija
• Testavimo strategijos privalumai:– “Verslas” supras, ko reikia iš jų sėkmingam
testavimui atlikti– Projekto valdymo komanda anksti žinos, ko reikės
testavimui, ir galės suplanuoti biudžetą– Programavimo komanda žinos savo įsipareigojimus
(užšaldytas kodas, 100% sprendimų padengimas modulių testavime)
– Testavimo komanda supras, ką reikia padaryti (testavimo metodai, kriterijai test. lygiams)
Kas rašoma testavimo strategijoje?
• Standarto nėra. Galimos temos:– Kokių standartų laikomasi (CMMI, ISO9000, …)– Kokie naudojami testavimo lygmenys– Kokie naudojami testavimo metodai– Kokios naudojamos TA kūrimo technikos– Kaip atliekamas patvirtinimo/regresinis testavimas– Kiek testuojami pernaudoti komponentai
...
Kas rašoma testavimo strategijoje?
...– Kiekvienam testavimo lygmeniui nustatyti įėjimo ir
išėjimo kriterijai (padengimas, defektų kiekis)– Incidentų valdymas (registravimas, sprendimas,
analizė)– Kokios bus naudojamos aplinkos– Kokie bus naudojami įrankiai– ...
Projekto testavimo planas
• Tikslas – išdėstyti užduotis ir resursus, reikalingus testavimo veikloms atlikti konkrečiu laikotarpiu
• Veiklos gali būti nurodytos test. strategijoje– Testavimo planas tuomet nurodo KAIP bus
realizuota testavimo strategija
Projekto testavimo planas
• Testavimo planas apima veiklas, aprašytas testavimo strategijoje su papildomomis detalėmis:– Kaip tai bus daroma (konkrečios užduotys)– Kada tai bus daroma (grafikas, terminai)– Kas tai darys (komanda, reikalingos kvalifikacijos)
Kas rašoma testavimo plane?
• Pagal IEEE 829-1998:– ID– Nuorodos– Įžanga– Testavimo objektai (items)– PĮ rizikos– Testuojamos savybės– Netestuojamos savybės– Priėjimas/taktika (approach)– Sėkmingo/nesėkmingo testavimo kriterijai– Sustabdymo ir pratęsimo kriterijai
...
Kas rašoma testavimo plane?
...– Planuojami darbo produktai– Likusios testavimo užduotys– Reikalingos aplinkos– Kompetencijų ir mokymų poreikiai– Atsakomybės– Grafikas– Rizikos ir nenumatyti atvejai– Patvirtinimai– Žodynėlis
Projekto etapo testavimo planas
• Analogiškas projekto testavimo planui• Skirtas konkrečiam projekto etapui:– Testavimo lygmeniui– Iteracijai
• Gali būti atskiras dokumentas arba projekto testavimo plano dalis
Pasikartojam
• Testavimo vizija/gairės• Testavimo strategija• Projekto testavimo planas• Projekto etapo testavimo planas
Testavimo plano turinys
• ID:– Dokumento identifikacinis numeris– Gerai įtraukti versiją + etapą, kuriam skirtas planas
Testavimo plano turinys
• Nuorodos:– Susijusių dokumentų sąrašas:• Projekto planas, reikalavimų specifikacija, techninis
projektas, standartai ...
– Leidžia nedubliuoti informacijos– Turi būti nurodoma konkreti dokumento versija
Testavimo plano turinys
• Įžanga:– Plano tikslas (galbūt lygmuo: master, unit, etc.),
santrauka. Trumpai:• Ką apima planas, lyginant su projekto planu• Resursų ir biudžeto apribojimai• Testavimo apimtis• Kaip testavimas susijęs su kitomis veiklomis• Pakeitimų valdymo, komunikacijos ir veiklų
koordinavimo procesai
Testavimo plano turinys
• Testavimo objektai (items):• Sąrašas, kas bus testuojama:– Funkcionalumas, našumas, saugumas, etc.– PĮ versijos– Gali būti įtrauktas kritinių elementų pateikimo grafikas
• Ką testuojam = ką žadam pateikti klientui ;)• Sąrašas pritaikomas testavimo plano lygmeniui:– Aukštesniems – pagal programas ar funkcines sritis– Žemesniems, pvz., pagal komponentus
Testavimo plano turinys
• PĮ rizikos:– Trečių šalių PĮ, nauja integruojamos PĮ versija,
neseni pakeitimai su daug defektų, prastai dokumentuoti moduliai, sudėtingumas ...
– Iš praeities (ankstesnio testavimo lygmens, iteracijos) žinomi moduliai su daug defektų
– Gerai pasidaryti brainstorming’ą, kur visi išsakytų, kas juos neramina
Testavimo plano turinys
• Testuojamos savybės:– Kas bus testuojama iš NAUDOTOJO perspektyvos– Paprastai – funkcinės sritys ir procesai– Kiekvienai savybei gali būti nurodomas rizikos
lygmuo
Testavimo plano turinys
• Netestuojamos savybės:– Kas NEBUS testuojama:• Iš naudotojo perspektyvos• T.p. netestuojamos PĮ versijos, techninės savybės
– Kodėl nebus testuojama:• Pvz., maža rizika, bus testuojama kitoje iteracijoje, ...
Testavimo plano turinys
• Testuojamos ir netestuojamos savybės tiesiogiai siejasi su plano dalimis, susijusiomis su rizikomis:– Kas bus/nebus testuojama, priklauso nuo rizikų– Kas nebus testuojama, įtakoja projekto rizikas
Testavimo plano turinys
• Priėjimas/taktika (approach):• Taisyklės ir procesai• Įrankiai (ar reikės mokymų)• Metrikos (kaip renkamos)• Kaip vykdomas konfigūracijos valdymas• Naudojama PĮ ir TĮ• Kaip atliekamas regresinis testavimas• Kaip elgiamasi su neištestuojamais reikalavimais• Specialūs reikalavimai testavimui• Kaip bus organizuojami susitikimai ir pan.
Testavimo plano turinys
• Sėkmingo/nesėkmingo testavimo kriterijai:• Kada TA rezultatas laikomas sėkmingu?• Kada etapo testavimas laikomas sėkmingu?
– Įvykdytų TA, kodo padengimo %– Defektų skaičius ir kritiškumas
• Kada projekto testavimas laikomas sėkmingu?– Įvykdyti visų etapų testavimo planai– Bendras defektų skaičius ir kritiškumas
Testavimo plano turinys
• Sustabdymo ir pratęsimo kriterijai:– Kada darom pauzę: kai yra tiek defektų, kad
testuoti toliau yra tik resursų švaistymas– Kada tęsiam po pauzės: kai pataisyta pakankamai
defektų / pakankamai kritinių defektų– Kitos priežastys (pvz., resursai)
Testavimo plano turinys
• Planuojami darbo produktai:– Testavimo planai– Testavimo atvejai– Įrankiai ir jų išvesties duomenys– Simuliatoriai– Klaidų ir vykdymo žurnalai (logs)– Problemų ataskaitos ir korekciniai veiksmai
• Testuojama PĮ čia – ne darbo produktas
Testavimo plano turinys
• Likusios testavimo užduotys:– Jei testuojama etapais, pateikiamos užduotys,
kurios į šį planą neįeina:• Kad nepasimestų – būtų įtraukiama į kitus planus• Kad nebūtų registruojami defektai dėl to, kas dar neturi
veikti ar priklauso trečiosioms šalims
Testavimo plano turinys
• Reikalingos aplinkos:– Speciali TĮ, simuliatoriai, etc.– Specialūs testavimo duomenys– Naudojamos PĮ versijos– Testavimo įrankiai, jų versijos– Aplinkos naudojimo apribojimai• Ne daugiau nei X naudotojų vienu metu• EOD, aplinkos atnaujinimai• ...
Testavimo plano turinys
• Kompetencijų ir mokymų poreikiai:– Kokių specialistų, kokių žinių reikia– Testuojamos sistemos mokymai– Įrankių naudojimo mokymai
Testavimo plano turinys
• Atsakomybės:– Kas atsakingas už:• Rizikų valdymą• Testuojamas ir netestuojamas savybes• Testavimo taktiką• Aplinkas• Grafiko problemų sprendimą• Mokymus• Kritinius sprendimus, neapibrėžtus testavimo plane
Testavimo plano turinys
• Grafikas:– ! Pagrįstas realistiškais ir patikrintais įvertinimais– Geriausia nurodyti ne konkrečias datas, o susietas
su programavimo rezultatais• Pvz., sistemos testavimas prasideda dieną po sistemos
surinkimo
– Numatoma, kaip elgtis nukrypus nuo grafiko
Testavimo plano turinys
• Rizikos ir nenumatyti atvejai:– Truks žmonių, įrankių, duomenų, vėluos
programavimas, mokymai, keisis reikalavimai, ...– Kas bus daroma kiekvienu atveju, pvz., jei
reikalavimai pasikeis po X datos:• Bus nukelta testavimo pradžios ir pabaigos data• Bus sumažintas atliekamų testų skaičius• Bus padidintas priimtinas defektų skaičius• Bus padidintas testuotojų skaičius/darbo valandos ...
Testavimo plano turinys
• Patvirtinimai:– Tvirtinantys asmenys skirsis projekto testavimo
planui, modulių testavimo planui ir pan.– Skiriasi techninių, vadovaujančių ir “verslo”
žmonių supratimas:• Atitinkama bus reakcija į testavimo planą
Testavimo plano turinys
• Žodynėlis:– Savokos– Sutrumpinimai
Testavimo plano turinys
• Priklausomai nuo poreikių:– Gali būti papildomų skyrių– Gali nebūti kai kurių skyrių– Skyriai gali būti apjungiami– ...
Pasikartojam
• Testavimo plano turinys
Kita testavimo dokumentacija
• Testavimo atvejai• Defektų aprašai• Testavimo ataskaitos• Testavimo žurnalas• ...
Testavimo atvejų dokumentavimas
• Testavimo atvejų šablonai• Forma priklauso nuo panaudojimo:– Teikiama klientams– Įtraukiama į regresinių testų rinkinį– Vienkartiniai paprasto funkcionalumo TA
• Būtinai versijuojami– Pvz., pateikėme klientui TA su klaida, kurią vėliau
pataisėme
• Daugiau: žr. paskaitą nr. 5
Defektų dokumentavimas
• Defektų valdymo proceso aprašymas• Defektų aprašymo šablonai
• Daugiau: žr. paskaitą nr. 6
Testavimo ataskaitų dokumentavimas
• Svarbu konsistenciškumas• Svarbu pritaikyti gavėjams• Dar svarbiau – teisingi duomenys • Testavimo ataskaitų šablonai:– Testavimo būsenos ataskaitos– Testavimo rezultatų apibendrinimo ataskaitos
• Daugiau: žr. paskaitą nr. 7
Klausimai ir idėjos