1 / 34

Program ų sistemų testavimas

Program ų sistemų testavimas. Aist ė Stikliūtė aiste.stikliute @ mif.vu.lt http://web.vu.lt/mif/a.stikliute +370 604 17281 VU MIF Programų sistemų katedra. Testavimo pagrindai. Testavimo istorija trumpai I šsamus testavimas, testavimo nutraukimo problema

paulette
Download Presentation

Program ų sistemų testavimas

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programų sistemų testavimas Aistė Stikliūtė aiste.stikliute@mif.vu.lt http://web.vu.lt/mif/a.stikliute +370 604 17281 VU MIF Programų sistemų katedra

  2. Testavimo pagrindai • Testavimo istorija trumpai • Išsamus testavimas, testavimo nutraukimo problema • Testavimas atsižvelgiant į rizikas • Testavimo procesas • Testavimo vieta PĮ gyvavimo cikle • Skirtingų PĮ tipų testavimas

  3. Testavimo istorija • Iki 1956: derinimas (debugging) • 1957–1978: demonstracinis testavimas • 1979–1982: destruktyvus testavimas • 1983–1987: vertinamasis testavimas • Nuo 1988: prevencinis testavimas

  4. Išsamus testavimas • Ištestuotos visų galimų reikšmių (leistinų ir neleistinų) visos galimos kombinacijos • Neįmanoma • Pvz.: if (a > b) print (a) else print (b)

  5. Išsamus testavimas • Testavimastiesiogiaikokybės negerina • Testavimas neparodo, kad defektų nėra – bet sistematiškas testavimas leidžia prognozuoti, ar yra ir kiek • Testavimas parodo, kad defektų yra – kokybė gerinama juos ištaisius • Tikslas – surasti kuo daugiau svarbių defektų

  6. Išsamus testavimas • Resursų trikampis Kaina Funkcionalumas (features) Pasirinkite du  Laikas Kokybė

  7. Testavimo nutraukimo problema • Kada baigti testuoti? • Naujų defektų tikimybė proporcinga surastų defektų kiekiui

  8. Testuojamumas • Ne viską įmanoma ištestuoti • Neaiškūs, prieštaringi reikalavimai • Techninės kliūtys • Resursų trūkumas • Sprendimas: • Reikalavimų peržiūros • Apsibrėžti, kas bus ištestuota, kas ne

  9. Testavimo nutraukimo problema • Sprendimas: • Planuoti testavimą • Parinkti testavimo strategijas • Apsibrėžti testavimo pabaigos kriterijus • Testuoti atsižvelgiant į rizikas

  10. Testavimas atsižvelgiant į rizikas • Rizika – faktorius, susijęs su galimomis neigiamomis pasekmėmis • Rizikos tipai: • Saugos, saugumo, ekonominė, politinė, techninė... • Produkto ir projekto

  11. Testavimas atsižvelgiant į rizikas • Rizika matuojama įvertinant tikimybę ir poveikį • Rizikų matrica: Tikimybė Poveikis

  12. Testavimas atsižvelgiant į rizikas • Rizikų matricos trūkumai: • Nepakankama raiška • Klaidos • Dviprasmiški duomenys ir rezultatai • Sprendimas: • Naudoti atsargiai, su išsamiais paaiškinimais • Viduryje esančioms rizikoms reikalingas papildomas tyrimas

  13. Testavimas atsižvelgiant į rizikas • Testavimas – rizikos mažinimo būdas • Natūralu: sudėtingesnis projektas  daugiau rizikų  reikia daugiau testavimo

  14. Testavimas atsižvelgiant į rizikas • Testavimas atsižvelgiant į rizikas (risk based testing): • Nustatom rizikų lygius • Atitinkamai prioritetizuojam testavimą • Bet kuriuo laiko momentu turim mažiausią įmanomą riziką

  15. Pasikartojam • Visko ištestuoti neįmanoma • Svarbu planuoti testavimą: • Apsibrėžti, ką testuosim • Prioritetus teikti atsižvelgiant į rizikas

  16. Pesticidų efektas • Kuo daugiau testuojam, tuo sistema tampa atsparesnė testams: • Programuotojai mokosi nedaryti tokių pat klaidų (daro kitas) • Ieškant su tais pačiais testais, defektų neberandama • Sprendimas – nuolat kurti naujus, kitokius testus

  17. Testavimo procesas Testavimo planavimas ir valdymas Analizė ir testų kūrimas Testavimo vykdymas Rezultatų įvertinimas, ataskaitų rengimas Testavimo pabaigos veiklos

  18. Testavimo planavimas ir valdymas • Testavimo planavimas: • Tikslų, apimties apibrėžimas, rizikų identifikavimas • Testavimo būdas (metodai, komanda, aplinka, įrankiai) • Grafiko sudarymas • Testavimo pabaigos kriterijai • Testavimo valdymas: • Rezultatų analizė • Laukiamo ir realaus progreso palyginimas, palyginimas su testavimo pabaigos kriterijais • Sprendimo priėmimas, jei kažkas negerai

  19. Analizė ir testų kūrimas • Reikalavimų, techninių specifikacijų ir kt. peržiūra • Testavimo sąlygų ir duomenų identifikavimas • Testų kūrimas • Reikalavimų ir sistemos testuojamumo įvertinimas • Testavimo aplinkos ir infrastruktūros projektavimas/realizavimas

  20. Testavimo vykdymas • Testavimo aplinkos patikrinimas • Testavimo atvejų vykdymas numatyta tvarka (rankiniu ar automatiniu būdu) • Testavimo rezultatų registravimas • Testavimo veiklų kartojimas esant reikalui – atlikus pakeitimą ar ištaisius defektą

  21. Rez. įvertinimas, ataskaitos • Ar pasiekti apibrėžti pabaigos kriterijai • Ar reikia daugiau testų, ar reikia pakeisti pabaigos kriterijus • Testavimo ataskaitos suinteresuotiems asmenims parengimas: • Apibendrinti rezultatai • Kas buvo ir nebuvo testuota

  22. Testavimo pabaigos veiklos • Užtikrinimas, kad visa dokumentacija tvarkinga • Konstatavimas, kad sistema priimta • Testavimo aplinkos ir įrankių uždarymas/archyvavimas • Sistemos perdavimas palaikymo komandai • Išmoktų pamokų aptarimas/dokumentavimas

  23. Pasikartojam  Testavimo planavimas ir valdymas Analizė ir testų kūrimas Testavimo vykdymas Rezultatų įvertinimas, ataskaitų rengimas Testavimo pabaigos veiklos

  24. Testavimo vieta PĮ gyvavimo cikle • Kada testuoti? • Kai pilnai suprogramuota? • Rizikos pvz. – nekorektiški reikalavimai • Gera praktika – testavimą įtraukti kuo anksčiau • Projekto planavimas • Reikalavimų peržiūros • Iteratyvus testavimas

  25. Testavimo vieta PĮ gyvavimo cikle

  26. PĮ gyvavimo ciklo modeliai V modelis Iteratyvus modelis Produkto tikslai ir prioritetai Reikalavimai Priėmimo testavimas 1 iteracija Sistemos specifikacija Sistemos testavimas Progr. Test. Techninė specifikacija Integracijos testavimas n iteracija Modulio projektas Modulio testavimas Progr. Test. Programavimas Produktas

  27. Judrusis (Agile) PĮ kūrimas • Scrum, XP... • Trumpos iteracijos • Mažiau planavimo, daugiau grįžtamojo ryšio • Test-driven development: • Pirmiausia programuojam testus • Tada PĮ kodą • Pademonstruojam suinteresuotiems asmenims, vėl programuojam testus

  28. Pasikartojam • Testavimo vieta PĮ gyvavimo cikle – kiek įmanoma anksčiau • Gera praktika – programuoti ir testuoti iteratyviai

  29. Skirtingų PĮ tipų testavimas • Skirtinga PĮ  skirtingos savybės  skirtingas testavimas • Asmeninių kompiuterių (AK) PĮ • Superkompiuterių (mainframe) PĮ • Klientų-serverių PĮ • Internetinės sistemos

  30. Asmeninių kompiuterių PĮ • PĮ veikia viename kompiuteryje • Testuojant atsižvelgti: • PC/Mac architektūros, skirtingos OS • Suderinamumas su kitomis programomis • Resursų naudojimas

  31. Superkompiuterių PĮ • Fiziškai dideli, galingi kompiuteriai • Ribota naudotojo sąsaja • Aukštas pasiekiamumo, saugumo lygis, galimybė sujungti kelis superkompiuteris • Testuojant atsižvelgti: • Sudėtingos testavimo aplinkos sukūrimas • Didelės apimties testavimo duomenys • Patikimumo ir klaidų toleravimo, plečiamumo, saugumo testavimas

  32. Klientų-serverių PĮ • Ryšys per tinklą, serveris laukia klientų užklausų • “Ploni” ir “stori” klientai • Testuojant atsižvelgti: • Klientų užklausų simuliavimas • Ilgalaikio pasiekiamumo testavimas • Saugumo ir našumo testavimas • Testavimas tinkle su daug klientų

  33. Internetinės sistemos • Iš esmės klientų-serverių PĮ l. dideliame tinkle su “plonu” klientu (šiais laikais “storėja” – JavaScript, ActiveX) • Dinamiškai generuojamas turinys • Testuojant atsižvelgti: • Atstumas iki serverio ir tarp klientų • Itinskirtingosaplinkosirnaršyklės • Našumo, saugumo, patogumo testavimas, pritaikymas neįgaliesiems

  34. Klausimai ir idėjos

More Related