Regressioonitestimine: erinevus redaktsioonide vahel

Eemaldatud sisu Lisatud sisu
Iiiren (arutelu | kaastöö)
Resümee puudub
Iiiren (arutelu | kaastöö)
Resümee puudub
1. rida:
'''RegressiooniRegressioon testimine''' ([[inglise keel|ingl.]] ''regression testing'', [[ladina keel|lad.]] ''regressio'' - liikumine tagasi) - üldnimetus kõikide [[tarkvara]] testimise tüüpidele, mis on suunatud sellele, et leida vead juba varem üle testitud rakenduses või programmi koodis.
 
== Põhiprintsiip ==
 
RegressiooniRegressioon testimise mõte on selles, et järelkontrollida uut programmi versiooni vanade testitega.
 
'''Eesmärgiks on:'''
9. rida:
* veenduda selles, et muutunud süsteem endiselt vastab [[nõue|nõuetele]]. Niisuguseid vigu - kui programm pärast muutuste integreerimist ei tööta enam nii, nagu peaks töötama - nimetatakse regressiooni vigadeks ([[inglise keel|ingl.]] ''regression bugs'').
 
RegressiooniRegressioon testimine algatakse pärast esimest uuendust ja lõpetakse lõppversiooniga. Pärast iga versiooni uuendust regressiooniregressioon testide hulk suureneb, sellepärast suureneb ka nende täitmise aeg ja teiste ressurside vajadus. RegressiooniRegressioon testimine võib koosneda ainult edukalt sooritatud testidest: ei ole mõtet kontrollida mooduli funktsionaalsust, kui eelnevas versioonis see ei töötanud.
 
[[Pilt:Regressiooni-testminie.gif]]
15. rida:
== Automatiseerimine ==
 
Tavaliselt kasutatakse regressiooniregressioon testimiseks testjuhtumeid ([[inglise keel|ingl.]] ''test case''), mis oli kirjutatud [[Arvutiprogramm|programmi]] väljatöötamise alguses. Samuti on soovitatav automatiseerida regressiooniregressioon testid, sest neid on vaja kasutada igas järgmises programmi versioonis. Tihedaks regressiooniregressioon automaattestimiseks kasutatakse spetsiifilist [[tarkvara]], mis paneb neid käima mingi antud ajavahemiku järel. Väikeses [[projekt|projektis]] võib see toimuda pärast iga õnnestunud kompilatsiooni, suuremas [[projekt|projektis]] iga öö või iga nädal.
 
== Cem Kaner'i arvamus ==
21. rida:
Cem Kaner on tarkvara tehnika professor [http://www.fit.edu Florida Tehnoloogia Instituudis] ja on võib-olla kõige tuntum tarkvara kasutatavuse ja testimise spetsialist.
 
Cem Kaner kirjeldas kolme regressiooniregressioon testimise '''põhitüübi:'''
* Vea regressioon ([[inglise keel|ingl.]] ''bug regression'') - katse tõestada, et parandatud viga tegelikult ei ole parandatud.
* Vanade vigade regressioon ([[inglise keel|ingl.]] ''old bug regression'') - katse tõestada, et koodi või andmete viimane uuendus lõhkus vanade vigade parandust, nö vanad vead on uuesti tekitatavat.
* Kõrvalnäha regressioon ([[inglise keel|ingl.]] ''side effect regression'') - katse tõestada, et koodi või andmete viimane uuendus lõhkus teisi rakenduse osi.
 
RegressiooniRegressioon testimiseks on Cem Kaneril ja James Bachil olemas väga hea presentatsioon "Musta kasti tarkvara testimine: Osa 11 - regressiooniregressioon testimine" ([[inglise keel|ingl.]] ''"Black Box Software Testing: Part 11 - Regression Testing"'').
 
== RegressiooniRegressioon testimise kasutamine ==
 
* Regressioon testimine on samuti lahutamatu ekstremaalse programmeerimise ([[inglise keel|ingl.]] ''extreme programming'') osa.
* RegressiooniRegressioon testimist võib kasutada mitte ainult korrektsuse kontrollimiseks, vaid ka tulemuse kvaliteedi hindamiseks. Näiteks [[kompilaator|kompilaatori]] kirjutamise korral kasutakse regressiooniregressioon testimist saadud koodi suuruse, selle täitmise kiiruse ja iga testi näidiste kompilatsiooni aja vaatlemiseks.
 
== Viided ==