Baltosios dėžės testavimas
„White Box Testing“ yra programinės įrangos testavimo technika, kurios metu tikrinama vidinė programinės įrangos struktūra, dizainas ir kodavimas, siekiant patikrinti įvesties-išvesties srautą ir pagerinti dizainą, patogumą naudoti ir saugumą. Baltosios dėžės bandymuose kodas matomas testuotojams, todėl jis taip pat vadinamas „Clear box testing“, „Open box testing“, „Transparent box“ testais, „Code-based testing“ ir „Glass box“ bandymais.
Tai yra viena iš dviejų „Box Testing“ požiūrio į programinės įrangos testavimą dalių. Jo atitikmuo „Blackbox“ testavimas apima testavimą iš išorės ar galutinio vartotojo tipo perspektyvos. Kita vertus, „White box“ testavimas programinės įrangos inžinerijos srityje yra pagrįstas vidiniu programos veikimu ir sukasi apie vidinį testavimą.
Terminas „WhiteBox“ buvo vartojamas dėl permatomos dėžės koncepcijos. Aiškus langelis arba „WhiteBox“ pavadinimas simbolizuoja galimybę per programinės įrangos išorinį apvalkalą (arba „dėžutę“) matyti vidinį jos veikimą. „Juodosios dėžės testavimas“ „juodoji dėžutė“ simbolizuoja negalėjimą pamatyti vidinės programinės įrangos veikimo, kad būtų galima patikrinti tik galutinio vartotojo patirtį.
Šioje baltos dėžės testavimo pamokoje sužinosite
- Kas yra baltosios dėžės testavimas?
- Ką jūs patikrinate „White Box“ bandymuose?
- Kaip jūs atliekate „White Box“ testavimą?
- „WhiteBox“ testavimo pavyzdys
- Baltosios dėžės testavimo metodika
- Baltosios dėžės testavimo tipai
- Baltosios dėžės testavimo įrankiai
- Baltosios dėžės testavimo privalumai
- „WhiteBox“ testavimo trūkumai
Ką jūs patikrinate „White Box“ bandymuose?
„Baltosios dėžės“ testavimas apima programinės įrangos kodo testavimą:
- Vidinės saugumo skylės
- Nutrūkę arba blogai susisteminti keliai kodavimo procesuose
- Konkrečių įvesties srautas per kodą
- Laukiama produkcija
- Sąlyginių kilpų funkcionalumas
- Kiekvieno teiginio, objekto ir funkcijos testavimas individualiai
Testavimas gali būti atliekamas sistemos, integracijos ir programinės įrangos vieneto lygmenyse. Vienas iš pagrindinių „whitebox“ testavimo tikslų yra patikrinti programos darbo eigą. Tai apima iš anksto nustatytų įvesties serijų bandymą su laukiamais ar pageidaujamais rezultatais, kad, kai konkretus įvestis nesukels laukiamos išvesties, susidursite su klaida.
Spustelėkite čia, jei vaizdo įrašas nepasiekiamas
Kaip jūs atliekate „White Box“ testavimą?
Norėdami pateikti jums supaprastintą baltos dėžės testavimo paaiškinimą, mes padalijome jį į du pagrindinius veiksmus . Tai bandytojai daro bandydami programą naudodami baltos dėžės testavimo techniką:
1 ŽINGSNIS. Supraskite šaltinio kodą
Pirmas dalykas, kurį bandytojas dažnai padarys, yra išmokti ir suprasti programos šaltinio kodą. Kadangi baltos dėžės testavimas apima vidinio programos veikimo testavimą, testuotojas turi gerai išmanyti programavimo kalbas, naudojamas jų bandomose programose. Be to, testuojantis asmuo turi gerai žinoti saugią kodavimo praktiką. Sauga dažnai yra vienas iš pagrindinių programinės įrangos testavimo tikslų. Testuotojas turėtų sugebėti rasti saugumo problemų ir užkirsti kelią įsilaužėlių ir naivių vartotojų išpuoliams, kurie sąmoningai ar nesąmoningai gali įterpti į programą kenksmingą kodą.
2 žingsnis) SUDARYKITE BANDYMO ATVEJUS IR VYKDYKITE
Antrasis pagrindinis bandymas atliekant baltos dėžės bandymą apima programos šaltinio kodo, ar tinkamas srautas ir struktūra, testavimą. Vienas iš būdų yra parašyti daugiau kodo, kad būtų galima patikrinti programos šaltinio kodą. Testuotojas parengs mažai bandymų kiekvienam programoje vykstančiam procesui ar procesų serijai. Šis metodas reikalauja, kad testuotojas turėtų gerai žinoti kodą ir dažnai tai daro kūrėjas. Kiti metodai apima rankinį testavimą, bandymą ir klaidų testavimą bei testavimo įrankių naudojimą, kaip mes paaiškinsime toliau šiame straipsnyje.
„WhiteBox“ testavimo pavyzdys
Apsvarstykite šį kodo fragmentą
„Printme“ (int a, int b) {------------ „Printme“ yra funkcijaint rezultatas = a + b;Jei (rezultatas> 0)Spausdinti („Teigiamas“, rezultatas)KitasSpausdinti („Neigiama“, rezultatas)} ----------- Šaltinio kodo pabaiga
Programinės įrangos inžinerijos „WhiteBox“ testavimo tikslas yra patikrinti visas kodo sprendimų šakas, kilpas, teiginius.
Norint pasinaudoti aukščiau pateikto baltos dėžės bandymo pavyzdžio teiginiais, „WhiteBox“ testo atvejai būtų
- A = 1, B = 1
- A = -1, B = -3
Baltosios dėžės testavimo metodika
Pagrindinė „White box“ testavimo technika yra „Code Coverage“ analizė. Kodo aprėpties analizė pašalina „Test Case“ rinkinio spragas. Jis nustato programos sritis, kurių nevykdo bandymų atvejai. Nustačius spragas, sukuriate bandomuosius atvejus, kad patikrintumėte neišbandytas kodo dalis, taip padidindami programinės įrangos produkto kokybę
Yra automatiniai įrankiai, skirti atlikti kodo aprėpties analizę. Toliau pateikiami keli aprėpties analizės metodai, kuriuos gali naudoti dėžutės testeris:
Pareiškimų aprėptis : - norint naudoti šią techniką, programinės įrangos inžinerijos metu reikia bent kartą išbandyti kiekvieną įmanomą kodo teiginį.
Filialo aprėptis - ši technika tikrina visus įmanomus programinės įrangos kelius (jei kitaip ir kitas sąlygines kilpas).
Be aukščiau, yra daugybė aprėpties tipų, tokių kaip būklės aprėptis, daugelio sąlygų aprėptis, kelio aprėptis, funkcijų aprėptis ir kt. Kiekviena technika turi savo nuopelnus ir bandymus išbandyti (padengti) visas programinės įrangos kodo dalis. Naudodami „Statement and Branch“ aprėptį, paprastai pasiekiate 80–90% kodo aprėpties, o tai yra pakankama. Toliau pateikiami svarbūs „WhiteBox“ testavimo metodai:
- Pareiškimo aprėptis
- Sprendimų aprėptis
- Filialo aprėptis
- Būklės aprėptis
- Kelių sąlygų aprėptis
- Galutinė valstybės mašinų aprėptis
- Kelio aprėptis
- Kontrolinio srauto bandymai
- Duomenų srauto testavimas
Peržiūrėkite šį straipsnį, kad sužinotumėte daugiau informacijos https://www.guru99.com/code-coverage.html
Baltosios dėžės testavimo tipai
„Baltosios dėžės“ testavimas apima kelis bandymo tipus, naudojamus programos, kodo bloko ar konkretaus programinės įrangos paketo tinkamumui įvertinti. Yra išvardyti žemiau -
-
Vieneto testavimas: dažnai tai yra pirmojo tipo bandymai, atliekami programoje. Vieneto testavimas atliekamas su kiekvienu vienetu ar kodo bloku, kai jis yra sukurtas. Vieneto testavimą iš esmės atlieka programuotojas. Kaip programinės įrangos kūrėjas, sukursite kelias kodo eilutes, vieną funkciją ar objektą ir išbandysite, kad įsitikintumėte, jog jis veikia, prieš tęsdami „Unit Testing“ padeda nustatyti daugumą klaidų, ankstyvoje programinės įrangos kūrimo gyvavimo cikle. Šiame etape nustatytos klaidos yra pigesnės ir lengvai pašalinamos.
-
Atminties nutekėjimo tikrinimas : atminties nutekėjimas yra pagrindinė lėčiau veikiančių programų priežastis. Kokybės kokybės specialistas, turintis patirties nustatant atminties nutekėjimą, yra būtinas tais atvejais, kai turite lėtai veikiančią programinę įrangą.
Be aukščiau, keletas bandymų tipų yra juodosios dėžės ir baltosios dėžės testavimo dalis. Jie išvardyti žemiau
- „White Box“ skverbimosi testavimas: atliekant šį bandymą testuotojas / kūrėjas turi visą informaciją apie programos šaltinio kodą, išsamią tinklo informaciją, susijusius IP adresus ir visą serverio informaciją, kuria programa veikia. Tikslas yra užpulti kodą keliais kampais, kad būtų atskleistos grėsmės saugumui
- „White Box“ mutacijos testavimas : mutacijos testavimas dažnai naudojamas norint atrasti geriausius kodavimo metodus, kuriuos reikia naudoti išplėsti programinės įrangos sprendimą.
Baltosios dėžės testavimo įrankiai
Žemiau pateikiamas geriausių baltos dėžės testavimo įrankių sąrašas.
- „Parasoft Jtest“
- „EclEmma“
- NUnit
- PyUnit
- HTMLUnit
- „CppUnit“
Baltosios dėžės testavimo privalumai
- Kodo optimizavimas ieškant paslėptų klaidų.
- Baltos dėžės testų atvejus galima lengvai automatizuoti.
- Testavimas yra išsamesnis, nes paprastai yra aprėpti visi kodo keliai.
- Testavimą SDLC galima pradėti anksti, net jei GUI nėra.
„WhiteBox“ testavimo trūkumai
- Baltos dėžės testavimas gali būti gana sudėtingas ir brangus.
- Kūrėjai, paprastai atliekantys baltos dėžės bandymo atvejus, to nemėgsta. Kūrėjų atliekamas baltos dėžės testavimas nėra išsamus, todėl gali kilti gamybos klaidų.
- Baltosios dėžės testavimui reikalingi profesionalūs ištekliai, išsamiai suprantant programavimą ir įgyvendinimą.
- „White-box“ testavimas yra daug laiko reikalaujantis, didesnėms programavimo programoms reikia laiko, kol jas išbandoma.
Pabaigos pastabos:
- Baltos dėžės testavimas gali būti gana sudėtingas. Sudėtingumas labai susijęs su bandoma programa. Nedidelė programa, atliekanti vieną paprastą operaciją, gali būti išbandyta baltame laukelyje per kelias minutes, o didesnių programavimo programų pilnai išbandyti reikia kelias dienas, savaites ir dar ilgiau.
- „White box“ testavimas programinės įrangos bandymuose turėtų būti atliekamas programinėje įrangoje, kuri yra kuriama po to, kai ji parašyta, ir dar kartą po kiekvieno pakeitimo