Testiranje puta i testiranje baznog puta u softveru s primjerima
โก Pametni saลพetak
Testiranje baznog puta je tehnika bijele kutije koja izvodi testne sluฤajeve iz logiฤkih puteva kroz program, koristeฤi graf toka upravljanja i ciklomatsku sloลพenost kako bi pronaลกla minimalni skup nezavisnih puteva.

ล to je testiranje putanje u testiranju softvera?
Testiranje staze strukturalna je metoda testiranja koja ukljuฤuje koriลกtenje izvornog koda programa kako bi se pronaลกao svaki moguฤi izvrลกni put. Pomaลพe u odreฤivanju svih greลกaka unutar dijela koda. Ova metoda je dizajnirana za izvrลกavanje svih ili odabranih putanja kroz raฤunalni program.
Svaki netrivijalni program sadrลพi mnogo moguฤih putova izvrลกavanja. Testiranje svakog od njih je i teลกko i dugotrajno, a veฤina se preklapa. Testiranje baznih putova smanjuje tu redundanciju identificiranjem najmanjeg skupa putova koji i dalje barem jednom izvrลกava svaku naredbu i svaku granu.
Testiranje osnovnog puta u programskom inลพenjerstvu
Testiranje osnovnog puta u softverskom inลพenjerstvu je a Bijela Box Ispitivanje metoda u kojoj se ispitni sluฤajevi definiraju na temelju tokova ili logiฤkih putova koji se mogu proฤi kroz program. Cilj testiranja osnovnog puta je definirati broj neovisnih putova, tako da se broj potrebnih testnih sluฤajeva moลพe eksplicitno definirati kako bi se poveฤala pokrivenost testom.
In programsko inลพenjerstvo, Osnovno testiranje staze ukljuฤuje izvoฤenje svih moguฤih blokova u programu i postiลพe maksimalnu pokrivenost staze s najmanjim brojem testnih sluฤajeva. To je hibridna metoda testiranja grana i metoda testiranja puta.
Jednostavan primjer ฤini ideju konkretnom.
Gornji graf toka sadrลพi uvjetne naredbe, tako da upravljanje moลพe doฤi do izlaza putem viลกe ruta. Potrebna su tri neovisna puta za njegovo pokrivanje:
- Put 1: 1,2,3,5,6, 7
- Put 2: 1,2,4,5,6, 7
- Put 3: 1, 6, 7
Kako nacrtati graf toka upravljanja
Svaki korak testiranja baznog puta ovisi o grafu toka upravljanja, stoga je vrijedno biti precizan u vezi s tim kako je on izgraฤen.
- ฤvor: niz naredbi koje se uvijek izvrลกavaju zajedno, nacrtan kao krug. Niz naredbi bez grana saลพima se u jedan ฤvor.
- Rub: prijenos kontrole s jednog ฤvora na drugi, nacrtan kao strelica. Rubovi su jedini naฤin na koji se kontrola kreฤe.
- Predikatni ฤvor: ฤvor koji sadrลพi uvjet, s dva ili viลกe rubova koji ga napuลกtaju. Oni odreฤuju broj sloลพenosti.
- Regija: podruฤje ograniฤeno rubovima i ฤvorovima. Broj regija plus jedan takoฤer je jednak ciklomatskoj sloลพenosti.
Razmotrimo kratki modul s dvije odluke:
if (a > b) { // node 1, predicate max = a; // node 2 } else { max = b; // node 3 } if (max > limit) { // node 4, predicate alert(); // node 5 } return max; // node 6
Graf ima 6 ฤvorova i 6 bridova, ลกto prema formuli za bridove daje V(G) = 6 โ 6 + 2 = 2. Broj predikata brลพe daje isti odgovor: 2 odluke plus 1 jednako je 3 neovisna puta kroz dvije grane zajedno. Upotrijebite bilo koji oblik koji moลพete pouzdano izraฤunati i provjerite s drugim.
Dva pravila koja sprjeฤavaju veฤinu pogreลกaka. Prvo, sloลพeni uvjet kao ลกto je ako (x > 0 i y > 0) raฤuna se kao dva predikatska ฤvora, a ne jedan, jer kratki spoj stvara drugu odluku. Drugo, petlja doprinosi jednim predikatskim ฤvorom bez obzira na to koliko se puta ponavlja.
Koraci za testiranje osnovnog puta
Osnovni koraci ukljuฤeni u testiranje temeljnog puta ukljuฤuju
- Nacrtajte kontrolni grafikon (kako biste odredili razliฤite programske staze)
- Izraฤunati Ciklomatska sloลพenost (metrika za odreฤivanje broja neovisnih staza)
- Pronaฤite osnovni skup staza
- Generirati test sluฤajevi vjeลพbati svaki put
Prednosti i ograniฤenja testiranja baznog puta
Prednosti testiranja baznog puta
- Pomaลพe smanjiti suviลกne testove
- Fokusira pozornost na programsku logiku
- Zamjenjuje proizvoljni odabir testnih sluฤajeva analitiฤkom osnovom.
- Testni sluฤajevi koji koriste osnovni skup izvrลกit ฤe svaku naredbu u programu barem jednom
Ograniฤenja testiranja baznog puta
- Ne moลพe pronaฤi nedostajuฤi kod. Zahtjev koji nikada nije implementiran nema putanju, pa se za njega neฤe generirati test. Testiranje osnovne putanje mora biti upareno s testiranjem temeljenim na zahtjevima.
- Broj staza brzo raste. Ugnijeลพฤene petlje i sloลพeni uvjeti brzo poveฤavaju sloลพenost, a modul s V(G) iznad 20 postaje nepraktiฤan za pokrivanje na ovaj naฤin.
- Pokrivenost nije ispravnost. Izvrลกavanje puta dokazuje da se kod izvrลกava, a ne da daje toฤan odgovor. Svaki test i dalje treba smislenu tvrdnju.
- Putovi ovisni o podacima. Neki su putovi dostupni samo s odreฤenim kombinacijama ulaznih podataka koje moลพe biti teลกko ili nemoguฤe konstruirati.

