Regressioonitestimine: erinevus redaktsioonide vahel

Eemaldatud sisu Lisatud sisu
Iiiren (arutelu | kaastöö)
Resümee puudub
1. rida:
'''Regressioon testimineRegressioonitestimine''' ([[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 ==
 
Regressioon testimiseRegressioonitestimise 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'').
 
Regressioon testimineRegressioonitestimine algatakse pärast esimest uuendust ja lõpetakse lõppversiooniga. Pärast iga versiooni uuendust regressioon testideregressioonitestide hulk suureneb, sellepärast suureneb ka nende täitmise aeg ja teiste ressurside vajadus. Regressioon testimineRegressioonitestimine 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|500px|thumb|RegressiooniRegressioonitestimise testimineprotsess.]]
 
== Automatiseerimine ==
 
Tavaliselt kasutatakse regressioon testimiseksregressioonitestimiseks testjuhtumeid ([[inglise keel|ingl.]] ''test case''), mis oli kirjutatud [[Arvutiprogramm|programmi]] väljatöötamise alguses. Samuti on soovitatav automatiseerida regressioon testidregressioonitestid, sest neid on vaja kasutada igas järgmises programmi versioonis. Tihedaks regressioon 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 regressioon testimiseregressioonitestimise '''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.
 
Regressioon testimiseksRegressioonitestimiseks on Cem Kaneril ja James Bachil olemas väga hea presentatsioon "Musta kasti tarkvara testimine: Osa 11 - regressioon testimineregressioonitestimine" ([[inglise keel|ingl.]] ''"Black Box Software Testing: Part 11 - Regression Testing"'').
 
== Regressioon testimiseRegressioonitestimise kasutamine ==
 
* Regressioon testimineRegressioonitestimine on samuti lahutamatu ekstremaalse programmeerimise ([[inglise keel|ingl.]] ''extreme programming'') osa.
* Regressioon testimistRegressioonitestimist võib kasutada mitte ainult korrektsuse kontrollimiseks, vaid ka tulemuse kvaliteedi hindamiseks. Näiteks [[kompilaator|kompilaatori]] kirjutamise korral kasutakse regressioon testimistregressioonitestimist saadud koodi suuruse, selle täitmise kiiruse ja iga testi näidiste kompilatsiooni aja vaatlemiseks.
 
== Viided ==