Nivoi testiranja softvera
0
SEMINARSKI RAD 2-
Tema: Nivoi testiranja softvera
Predmet: Razvoj softvera
Mentor: Student:
Prof.dr Borivoje Milošević Davor Božić И-35/2021
Beograd, jun 2025
1
SADRŽAJ:
1.
Uvod .................................................................................................................. 2
2.
Definicija i ciljevi testiranja .............................................................................3
3.
Strategije testiranja softvera.............................................................................. 4
3.1 „Big Bang“ strategija ......................................................................................4
3.2 Top-down i bottom-up testiranje.....................................................................5
4.
Klasifikacije softverskih testova(nivoi)..............................................................5
4.1 Klasifikacija prema konceptu testiranja .........................................................5
4.2 Klasifikacija u skladu sa zahtjevima...............................................................7
5. Klasične tehnike bijele kutije..............................................................................8
5.1 Testiranje osnovnih putanja ............................................................................8
5.2 Kontrola toka/testiranje pokrivenosti ...........................................................10
5.2.1 Pokrivenost iskaza .........................................................................10
5.2.2 Pokrivenost grana(odluka) .............................................................11
5.2.3 Pokrivenost baznih putanja ............................................................12
5.2.4 Pokrivenost uslova
.........................................................................
12
6. Klasične tehnike crne kutije.............................................................................13
6.1 Podjela na klase ekvivalencije ......................................................................13
6.2 Alaniza graničnih vrijednosti .......................................................................15
6.3 Tabela odlučivanja.........................................................................................16
7. Zaključak............................................................................................................18
8. Literatura...........................................................................................................19

3
2. DEFINICIJA I CILJEVI TESTIRANjA
Testiranje softvera je proces izvršavanja programa s ciljem pronalaženja grešaka. Ono se sastoji
od dinamičke verifikacije ponašanja programa na konačnom skupu test slučajeva, prikladno
izabranih iz obično beskonačnog domena izvršavanja, prema očekivanom ponašanju [2].
Testiranje softvera takođe pruža objektivan, nezavisan pogled na softver kako bi se omogućilo
klijentu da cijeni i razumije rizike implementacije tog softvera.
Tehnike testiranja uključuju proces izvršavanja aplikacije u cilju pronalaženja softverskih
grešaka, ali nisu ograničene samo na to.
Testiranje softvera se takođe može navesti kao proces provjere i verifikovanja programa
odnosno proizvoda koji:
Ispunjava poslovne i tehničke zahtjeve kojima je sproveden njegov dizajn i razvoj,
Radi kako treba,
Može biti implementiran sa tim istim karakteristikama.
CILJEVI TESTIRANJA:
Glavni cilj testiranja je da se utvrdi da li sistem ispunjava zahtjeve korisnika i da li je sistem
pouzdan.
Direktni ciljevi
Identifikacija i objavljivanje onoliko grešaka koliko je moguće u softveru koji se testira.
Dati testirani softver nakon korekcije identifikovanih grešaka i ponovnog testiranja do
prihvatljivog nivoa kvaliteta.
Izvršavanje zahtjevanih testova efektivno i efikasno unutar budžeta i vremenskog
rasporeda.
Indirektni ciljevi
Skupljanje zapisa o softverskim greškama da bi se koristile u prevenciji grešaka za
korektivne i preventivne akcije.
Mnogo termina se u literaturi o softverskom inžinjerstvu koristi radi opisa mana i grešaka (eng.
error, fault, failure
i dr.). Ključno je razdvojiti uzroke defekata, za koje se često koristi termin
greška (
fault ili defect
) i neželjenog efekta posmatranog u isporučenom sistemu koji zovemo
otkaz (
failure
). Otkaz je posledica odnosno manifestacija greške u softveru. Uzrok za otkaz ne
može uvek biti nedvosmisleno identifikovan jer ne postoji teoretski kriterijum radi preciznog
određivanja koja je greška prouzrokovala posmatrani otkaz.
Mnogo je efikasnije sprečiti nastanak grešaka nego detektovati i otkloniti iste. To znači da treba
testirati svaku proceduru ili modul odmah nakon njegovog pisanja. Testiranje u fazi integracije
sistema se mora izvršiti odmah nakon integracije komponenti softvera u sistem.
VERIFIKACIJA I VALIDACIJA
Kada se proces razvoja softvera završi, pre njegove isporuke kupcu treba ga još jednom testirati
u smislu da se utvrdi: da li proizvod korektno radi, odnosno da li izvršava sve one funkcije koje
kupac od njega očekuje.
Želimo li provjeriti je li softverski proizvod u informatičkom smislu korektno napravljen
4
primjenićemo postupak verifikacije (Traži se odgovor na pitanje: Da li dobro gradimo
proizvod?), a ako želimo provjeriti da li taj proizvod zaista zadovoljava želje i potrebe korisnika
(kupaca) primjenićemo postupak validacije (Traži se odgovor na pitanje: Da li
gradimo dobar proizvod?).
Verifikacija i validacija moraju biti primjenjene u svakoj fazi razvoja softvera. Proces
verifikacije i validacije ima dva osnovna cilja:
Da otkrije defekte u sistemu
Da proceni da li je softver koristan i upotrebljiv u operativnom smislu
Verifikacijom i validacijom bi se trebalo steći povjerenje u to da je softver pogodan za
korišćenje (što ne znači da nema nikakvih defekata).
3. STRATEGIJE TESTIRANJA SOFTVERA
Iako metodologije testiranja mogu varirati, najčešće se nalaze u okviru dvije osnovne strategije:
Testiranje softvera u cjelosti, nakon što je kompletan paket raspoloživ i poznat (“
big
bang testing
”).
Testiranje softvera u manjim djelovima, modulima kada se oni završe (
unit tests
);
poslije testiranje grupe testiranih modula sa novim završenim modulima (
integration
tests
). Ovaj proces se nastavlja dok svi softverski moduli ne budu testirani. Kada se ova
faza kompletira, sadržaj paketa se testira kao cjelina (
system test
). Ova strategija se
uobičajeno naziva “
inkrementalno testiranje
”.
3.1 „BIG BANG” STRATEGIJA
U ovom pristupu, sve ili većina razvijenih modula su spojena zajedno formirajući kompletan
softverski sistem ili glavni deo sistema a zatim se koriste za testiranje integracije [3]. Metoda
Big Bang je vrlo delotvorna za uštedu vremena u procesu testiranja integracije. Međutim, ako
se testni slučajevi i njihovi rezultati ispravno ne zabeleže, cijeli proces integracije će biti mnogo
komplikovaniji i može čak sprečiti tim za testiranje da ostvari cilj testiranja integracije.
Jedan tip Big Bang testiranja integracije zove se
Usage Model
testiranje
. Usage Model
testiranje se može koristiti u testiranju i softvera i hardvera. Osnove ovog tipa integracionog
testiranja leže u upotrebi korisnički orijentisanih opterećenja u integrisanim korisničkim
okruženjima.
Radeći testiranja na ovaj način, utvrđeno je okruženje, dok su pojedine komponente sistema
testirane indirektno kroz njihovo korišćenje. Usage model testiranje daje optimističan pristup
testiranju jer očekuje da će biti malo problema sa pojedinim komponentama. Strategija se u
velikoj mjeri oslanja na to da ljudi koji razvijaju komponente izvrše testiranje izolovanih
jedinica njihovog proizvoda. Cilj strategije je izbjegavanje ponovnog testiranja koje su već
odradili programeri i umesto toga utvrđivanje problema izazvanih interakcijom komponenata u
okolini. Za testiranje integracije, Usage Model testiranje može biti efikasnije i omogućava
bolju pokrivenost testa od tradicionalno usmerenih funkcionalnih testova integracije. Da bi bio
efikasan i precizan, mora se fokusirati na definisanje opterećenja izazvanih od strane korisnika
da bi se stvorili realni scenariji uticaja okruženja. Ovo osigurava da integrisana okolina radi kao
što bi trebalo za ciljne korisnike.

Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.
Slični dokumenti