Professional Documents
Culture Documents
PODGORICA
SEMINARSKI RAD
OBEZBJEĐENJE KVALITETA I TESTIRANJE SOFTVERA
TESTIRANJE SOFTVERA
Profesor: Student:
Student:
Prof. Dr Radomir Vukasojević Pekić Željko
M/09-09
Testiranje softvera
Sadržaj
Sadržaj.......................................................................................................................................................2
1. Uvod..................................................................................................................................................3
2. Testiranje softvera.............................................................................................................................3
3. Tehnike softverskog testiranja...........................................................................................................7
4. Vrste softverskog testiranja...............................................................................................................9
5. Strukturalno testiranje –"White-box"................................................................................................9
6. Funkcionalno testiranje....................................................................................................................12
6.1. Metoda crne kutije –"Black-box"................................................................................................12
6.2. Ekvivalentno particionisanje........................................................................................................16
6.3. Cause – Effect Graphing Techniques...........................................................................................17
6.4. Testiranje putem grafikona..........................................................................................................18
6.5. Error Guessing.............................................................................................................................18
7. Testiranje performansi.....................................................................................................................19
8. Poboljšanja procesa testiranja..........................................................................................................21
9. Instalaciono testiranje......................................................................................................................21
10. Zaključak......................................................................................................................................22
Literatura.................................................................................................................................................23
1. Uvod
2. Testiranje softvera
Testiranje softvera (ili samo testiranje) je bio prvi softverski alat za osiguranje
kvaliteta softvera koji se primjenjivao za kontrolu softverskih produkata prije
njihove isporuke ili instalacije kod klijenta. Na početku, testiranje je bilo
ograničeno na završnu fazu razvoja softvera. Kasnije, zbog važnosti ranije
detekcije softverskih defekata, a i da bi se ispunili koncepti osiguranja kvaliteta
softvera, SQA profesionalci su inicirali proširenje testiranja i na testiranje u
procesu kodiranja, što je dovelo do testiranja softverskih modula (unit testing) i
kompletnog integracionog testiranja.
Zašto testiranje?
Zato što su veliki gubici kompanija koje razvijaju softver upravo zbog velikog
broja defekata u isporučenom softveru. Prvenstveni zadatak test inženjera je
otkrivanje problema u softveru sa ciljem da se oni otklone prije predaje
softverskog proizvoda kupcu.
Od test inženjera se zahteva da otkrije što je moguće više problema i to što više
onih, vrlo ozbiljnih čije posledice mogu biti katastrofalne sa materijalnog i
bezbjednosnog aspekta. Zato je sa svih aspekata potrebno da se proces
testiranja softvera učini što efikasnijim i uz što manje troškove ukoliko je to
moguće.
Vrijeme za testiranje?
Otklanjanje grešaka
Postoje dvije vrste tipa ulaznih koje se uzimaju pri testiranju protoka informacija
Softverska konfiguracija i
Test konfiguracije.
Softverska konfiguracija
Test konfiguracije
Statičko
Dinamičko
Bijela kutija (White Box) je model za sistem o kome sve znamo, tj. Čije
elemente, strukturu i ponašanje poznajemo.
Ovu vrstu testiranja može da obavlja ili programer koji je napisao program ili
neko drugi kome je specijalnost testiranje softvera. Testiranje se naziva »bela
kutija« zato što je onom ko testira poznat algoritam ili programski kod.
6. Funkcionalno testiranje
Primenom metode crne kutije izrađuje se skup test slučajeva koji ispunjavaju
zahtjeve:
Test slučaja koji smanjuju broj test slučaja na mogućnost razumnog
testiranja
Test slučaja koji će nam prikazati prisutnost ili odsutnost klase grešaka
“Crnu kutiju“ predstavlja svaki neistraženi objekat ili pojava, čije ponašanje se
istražuje kontrolisanim djelovanjem na taj objekat i proučavanjem reakcija
objekata na ta djelovanja. Pod njom se podrazumijeva onaj objekat ili pojava
koja se predstavlja na dinamički sistem, odnosno sistem koji pod spoljnim
uslovima mijenja svoja stanja, ali se ne raspolože informacijama o procesu u
“crnoj kutiji”, nepoznata je zakonitost ponašanja pojave. Najkraće, to je bilo
metode crne kutije za svaki proces i element. Imamo dvije vrste procesa u
sistemima, deterministički (potpuno određen) i stohastički (na osnovu
poznavanja vrste i veličine ulaza može samo sa određenom vjerovatnoćom
pretpostaviti vrsta i količina izlaza).
Cilj svake sistemske analize treba biti da svaki sistem koji za nas na početku
predstavlja crnu kutiju pretvorimo u bijelu kutiju.
Osnovni funkcionalni alati testiranja izvode rezultate testova crne kutije u obliku
skripte. Jednom izvedene, ove skripte mogu koristiti u budućem razvoju softvera,
kao aplikacija koja verifikuje novu funkcionalnost, a da ne onemogući prethodnu.
Testiranje “crne kutije” se tako naziva jer je programski kod ili algoritam nevidljiv
osobi koja vrši tetsiranje. test se sprovodi tako što se programu (crnoj kutiji)
daju razlišiti podaci i posmatra ponašanje algoritma. Da bi se postigao efekat
testiranja, kod ove vrste testova se test podaci pripremaju pre izrade programa,
imajući na umu samo programske zahteve date u psecifikaciji programa.
Za predhodni primer, ispravni podaci bi bili recimo 34, 150, 250, neispravni
recimo ako umesto cifara damo slova, a graničnim slučajevima se mogu smatrati
podaci 99,100,101,199,200,201,299,300 i 301.
Cause – Effect Graphing Techniques je pristup dizajna test slučaja koji nudi jedan
koncizan opis logičkih uslova i pridruženih akcija.
Pristup ima četiri faze:
Cause (ulazni uslov) i Effect (radnja) navedeni su za modul i identifikacija
je dodjeljena za svaki
Cause – Effect graph je izrađen
Grafikon je izmijenio odluku u tabeli
Tabela pravila odluke modifikovanja test slučajeva
7. Testiranje performansi
Web sajt, kao dio velikog sistema koji zahtijeva više pristupa i obrade podataka,
sadrži ranjive čvorove koji moraju biti testirani prije implementacije. Nažalost,
većina stres testiranja mogu samo da simuliraju različite vrste opterećenja na
tačke u sistemu, ali nemogu testirati cijelu mrežu. Na sreću, jednom kada se
uradi stres testiranje i faktori opterećenja budu uspješno prevaziđeni, potreban
ponovni stres testing se vrši samo u slučaju kada dođe do većih promjena. Mana
testiranja performansi je ta što potvrđuje validnost sistema u otežanim uslovima
obrade podataka,ali ne garantuje za njihovu tačnost i ispravnost.
Regresivno testiranje
9. Instalaciono testiranje
10. Zaključak
Literatura