Program ų sistemų testavimas

20
Programų sistemų testavimas Aistė Stikliūtė [email protected] http://web.vu.lt/mif/a.stikliute/ +370 604 17281 VU MIF Programų sistemų katedra

description

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. Tema pagal pageidavimą. Testavimas programuotojams. Testavimas programuotojams. Modulių (unit) testai Test-driven development - PowerPoint PPT Presentation

Transcript of Program ų sistemų testavimas

Page 1: Program ų sistemų testavimas

Programų sistemų testavimas

Aistė Stikliūtė[email protected]

http://web.vu.lt/mif/a.stikliute/+370 604 17281

VU MIFProgramų sistemų katedra

Page 2: Program ų sistemų testavimas

Testavimas programuotojams

Tema pagal pageidavimą

Page 3: Program ų sistemų testavimas

Testavimas programuotojams

• Modulių (unit) testai• Test-driven development• Kita:– Rankinis testavimas– Konfigūracijos testavimas

• Testavimo procesas

Page 4: Program ų sistemų testavimas

Modulių testai

• Buvo 3 paskaitoje ir seminare• Esmė:– “Grynas” modulio testas testuoja TIK tą modulį– Reikalingi imituojantys objektai (mock objects),

fiktyvūs metodai (method stubs) ir fiktyvūs kvietėjai (drivers, test harnesses)

– Bet svarbiausia, kad būtų ištestuota

Page 5: Program ų sistemų testavimas

Modulių testai

• Įrankiai/karkasai:– xUnit: JUnit, NUnit, CppUnit, PyUnit, XMLUnit, ...– Savi karkasai

Page 6: Program ų sistemų testavimas

Modulių testai

• Testavimo idėjos, patarimai:– Testo pavadinimas – kuo aiškesnis: funkcionalumas

ir testavimo sąlyga– Testo kodas – kuo trumpesnis, su kuo mažiau

logikos: jei per ilgas, skaidom į trumpesnius– Laukiami rezultatai – konstantos, o ne skaičiuojami

teste– Laukiami rezultatai turėtų būti šalia duomenų– Exception’ai testuose negaudomi

Page 7: Program ų sistemų testavimas

Modulių testai

• Testavimo idėjos, patarimai:– Ekvivalentiškumo klasės, ribinės reikšmės, ...– Klaidingos situacijos– Testus rašyti toms vietoms, kuriose rasta daug

defektų– Parašyti testą, kai defektas “praslysta” į produkciją– ...

Page 8: Program ų sistemų testavimas

Modulių testai

• Knygos:– Johannes Link and Peter Frohlich,

Unit Testing in Java: How Tests Drive the Code– Paul Hamill,

Unit Test Frameworks– ...

Page 9: Program ų sistemų testavimas

Test-driven development

• Buvo seminare• Esmė:– Pirmiau rašomas testas, po to – sistemos kodas– Testas nepraeina– Parašomas minimalus sistemos kodas, reikalingas,

kad testas praeitų– Atliekamas kodo pertvarkymas– Testas vis dar turi praeiti

Page 10: Program ų sistemų testavimas

Rankinis testavimas

• Modulių testavimas ne visada atliekamas• Kažkaip ištestuoti kodą reikia, prieš atiduodant

testuotojams• Programuotojų “baziniai testai”:– Ar veikia pagrindinės funkcijos– Ar veikia “slidžios” vietos (specifinės

programuotojo žinios)

Page 11: Program ų sistemų testavimas

Konfigūracijos testavimas

• Programuotojai testuoja savo aplinkoje• Testuotojai – testavimo aplinkoje• Galimos problemos:– Nekorektiški adresai, prisijungimo duomenys:• Pvz., localhost

– Nenukopijuojama dalis failų– ...

Page 12: Program ų sistemų testavimas

Dalyvavimas testavimo procese

1. Laiku pateikti kodą testuotojams– Naują– Pataisymus

2. Defektų aprašymus papildyti naujomis būsenomis ir komentarais:– Defekto priežastis ir sprendimas, kt.

3. Pagalba testuotojams:– Informacija apie susijusias funkcijas– Techninė pagalba– ...

4. Dalyvavimas priimant sprendimus

Page 13: Program ų sistemų testavimas

Egzaminas

Page 14: Program ų sistemų testavimas

Egzaminas

• Data: 2011-01-11 (antradienis)• Laikas: 9 – 11 val.• Vieta: 101 a.

Page 15: Program ų sistemų testavimas

Egzaminas

• 2 val. (1,5 val. gryno atsakinėjimo į klausimus)• 5 balai

• 5 variantai– 10 testo klausimų - po 0,1 - 1 balas– 8 atviri klausimai - po 0,4-0,6 balo - 4 balai

Page 16: Program ų sistemų testavimas

Egzaminas

• Klausimų turinys:– 5-tukui nepakaks mintinai mokėti skaidres, bet 4-

tukui pakaks– 5-tukui pakaks to, ką pasakojau per paskaitas (arba

papildomų žinių iš kitur, arba labai gero skaidrių medžiagos interpretavimo)

Page 17: Program ų sistemų testavimas

Egzaminas

• Nusirašinėjimas:– Pagavus – iškart lauk iš egzamino ir universiteto– Aptikus taisant egzaminą – jei akivaizdu, lauk iš

universiteto, jei ne – aiškinsimės

Page 18: Program ų sistemų testavimas

Apklausa

Page 19: Program ų sistemų testavimas

Ką galima būtų pagerinti kurse

• Skaidrėse• Paskaitose• Seminaruose• Laboratoriniuose• Kt.

Page 20: Program ų sistemų testavimas

Klausimai ir idėjos