Tarkvara radade testimine ja baasradade testimine näidetega

⚡ Nutikas kokkuvõte

Baasraja testimine on valge kasti tehnika, mis tuletab programmi loogilistest radadest testjuhtumeid, kasutades minimaalse sõltumatute radade komplekti leidmiseks juhtimisvoo graafikut ja tsüklomaatilist keerukust.

  • 🗺️ Põhiidee: Testjuhtumid pärinevad pigem koodistruktuurist kui nõuete dokumendist.
  • 🔢 Neli sammu: Joonesta juhtimisvoo graafik, arvuta tsüklomaatiline keerukus, tuleta baashulk, kirjuta iga raja kohta üks test.
  • 📐 Testijuhtumite arv: Sõltumatute radade arv võrdub tsüklomaatilise keerukusega, andes objektiivse eesmärgi.
  • 🔄 Hübriidmeetod: See ühendab hargnemise testimise ja teekonna testimise, et saavutada maksimaalne katvus minimaalsete testidega.
  • ✅ Katvuse garantii: Baaskomplekti käivitamine käivitab mooduli iga lause vähemalt ühe korra.
  • ⚠️ Teadaolev piirang: See ei leia puuduvaid nõudeid, sest see testib ainult juba olemasolevat koodi.

Tee testimine Põhitee testimine

Mis on tee testimine tarkvara testimises?

Tee testimine on struktuurne testimismeetod, mis hõlmab programmi lähtekoodi kasutamist, et leida kõik võimalikud käivitatavad teed. See aitab tuvastada kõik kooditükis olevad vead. See meetod on loodud kogu või valitud tee käivitamiseks arvutiprogrammi kaudu.

Iga mittetriviaalne programm sisaldab palju võimalikke teostusradasid. Igaühe neist testimine on nii keeruline kui ka aeganõudev ning enamik neist kattub. Baasradade testimine vähendab seda redundantsust, tuvastades väikseima radade komplekti, mis ikka veel harjutab iga lauset ja iga haru vähemalt korra.

Põhitee testimine tarkvaratehnikas

Põhitee testimine tarkvaratehnikas on a Valge Box Testimine meetod, mille puhul testjuhtumid määratletakse programmi kaudu kasutatavate voogude või loogiliste teede põhjal. Baastee testimise eesmärk on määratleda sõltumatute teede arv, nii et vajalike testjuhtumite arvu saab testi ulatuse maksimeerimiseks selgesõnaliselt määratleda.

In tarkvaraarendus, Põhitee testimine hõlmab programmi kõigi võimalike plokkide täitmist ja saavutab maksimaalse tee katvuse väikseima arvu testjuhtumitega. See on harude testimise ja tee testimise meetodite hübriidmeetod.

Lihtne näide muudab idee konkreetsemaks.

Põhitee testimine tarkvaratehnikas

Ülaltoodud voograafil on tingimuslaused, seega saab juhtelement väljumiseni jõuda mitme marsruudi kaudu. Selle läbimiseks on vaja kolme sõltumatut teed:

  • Tee 1: 1,2,3,5,6, 7
  • Tee 2: 1,2,4,5,6, 7
  • Tee 3: 1, 6, 7

Kuidas joonistada juhtimisvoo graafikut

Baasraja testimise iga samm sõltub juhtimisvoo graafikust, seega tasub olla täpne selle koostamisel.

  • Sõlm: Ringikujuliselt joonistatud lausete jada, mis täidetakse alati koos. Harudeta lausete jada koondub üheks sõlmeks.
  • Serv: Juhtimise üleandmine ühelt sõlmelt teisele, mida kujutatakse noolena. Servad on ainus viis, kuidas juhtimine liigub.
  • Predikaadisõlm: tingimust sisaldav sõlm, millest lahkuvad kaks või enam serva. Need määravad keerukusastme.
  • Piirkond: Servade ja sõlmedega piiratud ala. Piirkondade arv pluss üks võrdub samuti tsüklomaatilise keerukusega.

Vaatleme lühikest moodulit kahe otsusega:

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

Graafil on 6 sõlme ja 6 serva, mis annab servavalemi järgi V(G) = 6 – 6 + 2 = 2. Predikaatide arv annab sama vastuse kiiremini: 2 otsust pluss 1 võrdub 3 sõltumatu teega läbi kahe haru kokku. Kasutage vormi, mida saate usaldusväärselt arvutada, ja kontrollige teisega.

Kaks reeglit, mis aitavad vältida enamikku vigu. Esiteks, liittingimus, näiteks kui (x > 0 ja y > 0) loetakse kaheks predikaatsõlmeks, mitte üheks, sest lühis loob teise otsustusprotsessi. Teiseks, tsükkel annab ühe predikaatsõlme, olenemata sellest, mitu korda see itereerub.

Baasraja testimise sammud

Baastee testimise põhietapid hõlmavad järgmist

  • Juhtgraafiku joonistamine (erinevate programmiteede määramiseks)
  • Arvutama Tsüklomaatiline keerukus (mõõdikud sõltumatute teede arvu määramiseks)
  • Leidke teede baaskomplekt
  • Tekitama testjuhtumid iga rada harjutama

Baasraja testimise eelised ja piirangud

Baasraja testimise eelised

  • See aitab vähendada üleliigseid teste
  • See keskendub programmi loogikale
  • See asendab suvalise testjuhtumite valiku analüütilise alusega
  • Testijuhtumid, mis kasutavad baaskomplekti, täidavad programmi iga lause vähemalt korra

Baasraja testimise piirangud

  • See ei leia puuduvat koodi. Nõudel, mida pole kunagi rakendatud, puudub teekond, seega sellele testi ei genereerita. Baasteekonna testimine tuleb siduda nõuetepõhise testimisega.
  • Teede arv kasvab kiiresti. Pesastatud tsüklid ja liittingimused suurendavad keerukust kiiresti ning mooduli, mille V(G) väärtus on üle 20, selline katmine muutub ebapraktiliseks.
  • Kajastus ei ole korrektsus. Tee käivitamine tõestab koodi töötamist, mitte õige vastuse saamist. Iga test vajab ikkagi sisukat väidet.
  • Andmetest sõltuvad teed. Mõnele teele pääseb ligi ainult kindlate sisendkombinatsioonidega, mida võib olla raske või võimatu luua.

KKK

Tee testimise eesmärk on käivitada kõikvõimalikud teed, mis on ebapraktiline igas tsüklit sisaldavas moodulis. Baastee testimine käivitab ainult sõltumatud teed, mis on palju väiksem hulk, kuid katab ikkagi iga lause ja haru.

Täpselt mooduli tsüklomaatiline keerukus. Kui V(G) on 4, siis eksisteerib 4 sõltumatut rada ja harude täielikuks katmiseks on vaja 4 testjuhtu.

Ei. See harjutab ainult juba olemasolevat koodi, seega nõue, mida pole kunagi rakendatud, ei anna ei rada ega ebaõnnestunud testi. Need kaks tehnikat täiendavad teineteist.

Tehisintellekti tööriistad genereerivad sisendväärtusi, mis jõuavad kindlate harudeni, mis on töö kõige aeglasem käsitsi teostatav osa. Samuti märgistavad need kättesaamatud teed, mis viitavad surnud koodile.

Jah. Staatilise analüüsi tööriistad on aastaid genereerinud juhtimisvoo graafikuid ja keerukusnäitajaid ning tehisintellekti abil töötavad tööriistad lisavad nüüd iga sõltumatu tee jaoks soovituslikke testi sisendeid.

Võta see postitus kokku järgmiselt: