Sveiki atvykę į pasaulį programinės įrangos testavimas , kuri užtikrina kokybę ir patikimumą programinės įrangos programos . Kūrėjams ir kokybės užtikrinimo specialistams labai svarbu suprasti įvairių tipų programinės įrangos testavimą.
Šiame vadove išnagrinėsime pagrindines programinės įrangos testavimo kategorijas – nuo vieneto testavimo iki saugos testavimo, padėsime jums naršyti ir užtikrinsime, kad jūsų programinė įranga atitiks aukščiausius našumo ir funkcionalumo standartus.
Turinys
Patikrinkite java versiją linux
- Programinės įrangos testavimo principai
- Įvairūs programinės įrangos testavimo tipai
- Rankinio testavimo tipai
- Juodosios dėžės testavimo tipai
- Funkcinio testavimo tipai
- Integracijos testavimo tipai
- Nefunkcinio testavimo tipai
- Kiti testavimo tipai
- Programinės įrangos testavimo privalumai
- Programinės įrangos testavimo trūkumai
- Klausimai praktikai
- Dažnai užduodami klausimai apie programinės įrangos testavimo tipus
Programinės įrangos testavimo principai
- Visi testai turi atitikti kliento reikalavimus.
- Kad mūsų programinės įrangos testavimas būtų atliktas trečiosios šalies.
- Išsamus bandymas neįmanomas. Kadangi mums reikia optimalaus bandymų kiekio, pagrįsto programos rizikos įvertinimu.
- Visi atliktini bandymai turi būti suplanuoti prieš jį įgyvendinant
- Tai atitinka Pareto taisyklę (80/20 taisyklę), kuri teigia, kad 80% klaidų kyla iš 20% programos komponentų.
- Pradėkite bandymą nuo mažų dalių ir išplėskite ją iki didelių dalių.
- Testavimo tipai

Programinės įrangos testavimo tipai
Įvairūs programinės įrangos testavimo tipai
- Rankinis testavimas
- Automatikos testavimas
1. Rankinis testavimas
Rankinis testavimas yra programinės įrangos testavimo metodas, kuris atliekamas naudojant programos funkcijas ir funkcijas. Neautomatinio programinės įrangos testavimo metu testuotojas atlieka programinės įrangos testus, vadovaudamasis iš anksto nustatytų bandymų atvejų rinkiniu. Atlikdami šį testavimą, bandytojai parengia kodų bandomuosius atvejus, išbando programinę įrangą ir pateikia galutinę ataskaitą apie tą programinę įrangą. Rankinis testavimas užima daug laiko, nes jį atlieka žmonės ir yra žmogiškųjų klaidų tikimybė.
Rankinio testavimo privalumai
- Greitas ir tikslus vaizdinis grįžtamasis ryšys: Jis aptinka beveik kiekvieną programinės įrangos klaidą ir yra naudojamas dinamiškai besikeičiantiems GUI dizainams, pvz., maketui, tekstui ir kt., išbandyti.
- Pigesnis: Jis yra pigesnis, nes nereikalauja jokių aukšto lygio įgūdžių ar konkretaus įrankio.
- Koduoti nereikia: Naudojant juodosios dėžės testavimo metodą nereikia jokių programavimo žinių. Tai lengva išmokti naujiems bandytojams.
- Veiksmingas neplanuotiems pokyčiams: Rankinis testavimas tinka neplanuotiems programos pakeitimams, nes jį galima lengvai pritaikyti.
2. Automatikos testavimas
Automatizuotas testavimas yra technika, kai testuotojas pats rašo scenarijus ir programinei įrangai išbandyti naudoja tinkamą programinę įrangą arba automatizavimo įrankį. Tai yra rankinio proceso automatizavimo procesas. Tai leidžia atlikti pasikartojančias užduotis be rankinio testerio įsikišimo.
Automatinio testavimo pranašumai:
- Supaprastina bandomojo atvejo vykdymą: Automatikos testavimas gali būti paliktas praktiškai be priežiūros, todėl proceso pabaigoje galima stebėti rezultatus. Taip supaprastinamas bendras testo vykdymas ir padidinamas programos efektyvumas.
- Pagerina testų patikimumą: Automatizavimo testavimas užtikrina vienodą dėmesį visoms testavimo sritims, taip užtikrinant geriausios kokybės galutinį produktą.
- Padidina bandymo aprėptį: Naudojant automatizavimo testavimą, galima sukurti ir įvykdyti daugiau testuojamų programų testavimo atvejų. Taigi, bandymo aprėptis yra didesnė ir aptinkama daugiau klaidų. Tai leidžia išbandyti sudėtingesnes programas ir išbandyti daugiau funkcijų.
- Žmonių sąveikos sumažinimas: Automatizavimo testavimo metu viskas yra automatizuota nuo bandomojo atvejo kūrimo iki vykdymo, todėl nėra jokių pakeitimų dėl žmogaus klaidų dėl aplaidumo. Tai sumažina būtinybę pašalinti trikdžius po išleidimo.
Rankinio testavimo tipai
- Baltos dėžutės testavimas
- Juodosios dėžės testavimas
- Pilkos dėžės bandymas
1. Baltosios dėžutės testavimas
Baltos dėžės bandymas metodai analizuoja vidines struktūras, naudojamas duomenų struktūras, vidinį dizainą, kodo struktūrą ir programinės įrangos veikimą, o ne tik funkcionalumą, kaip juodosios dėžės testavimo metu. Jis taip pat vadinamas stiklinės dėžės bandymu, skaidrios dėžės bandymu arba konstrukciniu bandymu. „White Box Testing“ taip pat žinomas kaip skaidrus arba atviros dėžutės testavimas.
Baltosios dėžutės testavimas yra programinės įrangos testavimo metodas, apimantis vidinės programinės įrangos struktūros ir veikimo testavimą. Testuotojas turi prieigą prie šaltinio kodo ir naudoja šias žinias kurdamas bandomuosius atvejus, kurie gali patikrinti programinės įrangos teisingumą kodo lygiu.
Baltos dėžės testavimo privalumai:
- Kruopštus testavimas : Baltosios dėžutės testavimas yra kruopštus, nes išbandomas visas kodas ir struktūros.
- Kodo optimizavimas: Tai leidžia optimizuoti kodo pašalinimo klaidas ir padeda pašalinti papildomas kodo eilutes.
- Ankstyvas defektų nustatymas: Jis gali prasidėti ankstesniame etape, nes jam nereikia jokios sąsajos, kaip juodosios dėžės bandymo atveju.
- Integracija su SDLC: Baltosios dėžutės testavimą galima lengvai pradėti programinės įrangos kūrimo gyvavimo cikle.
- Sudėtingų defektų nustatymas: Testuotojai gali nustatyti defektus, kurių negalima aptikti kitais testavimo būdais.
2. Juodosios dėžės testavimas
„Black-box“ testavimas yra programinės įrangos testavimo tipas, kurio metu bandytojas nesidomi vidinėmis programinės įrangos žiniomis ar diegimo detalėmis, o sutelkia dėmesį į funkcionalumo patvirtinimą pagal pateiktas specifikacijas ar reikalavimus.
Juodosios dėžės testavimo pranašumai:
- Norint įgyvendinti Black Box testavimą, testuotojui nereikia turėti daugiau funkcinių žinių ar programavimo įgūdžių.
- Tai efektyvu diegiant testus didesnėje sistemoje.
- Testai atliekami vartotojo arba kliento požiūriu.
- Bandomieji atvejai yra lengvai atkuriami.
- Jis naudojamas funkcinių specifikacijų neaiškumams ir prieštaravimams surasti.
3. Pilkos dėžutės testavimas
Pilkos dėžės bandymas yra programinės įrangos testavimo technika, kuri yra derinys Juodosios dėžės testavimas technika ir Baltos dėžutės testavimas technika.
- Naudojant Black Box Testing metodą, testuotojas nežino vidinės testuojamo elemento struktūros, o naudojant White Box Testing vidinę struktūrą testuotojas žino.
- Vidinė struktūra iš dalies žinoma „Grey Box Testing“.
- Tai apima prieigą prie vidinių duomenų struktūrų ir algoritmų, skirtų bandomiesiems atvejams kurti.
„Grey Box“ testavimo pranašumai:
- Tikslų aiškumas: Testuodami vartotojai ir kūrėjai turi aiškius tikslus.
- Atlikta iš vartotojo perspektyvos: Pilkos dėžutės testavimas dažniausiai atliekamas iš vartotojo perspektyvos.
- Aukšti programavimo įgūdžiai nebūtini: Šiam testavimui testuotojai neprivalo turėti aukštų programavimo įgūdžių.
- Neįkyrus: Pilkos dėžės testavimas yra neįkyrus.
- Pagerinta produkto kokybė: Bendra gaminio kokybė gerėja.
Juodosios dėžės testavimo tipai
- Funkcinis testavimas
- Nefunkcinis testavimas
1. Funkcinis testavimas
Funkcinis testavimas yra programinės įrangos testavimo tipas, kurio metu sistema išbandoma pagal funkcinius reikalavimus ir specifikacijas. Funkcinis testavimas užtikrina, kad programa tinkamai atitinka reikalavimus arba specifikacijas. Šio tipo bandymai ypač susiję su apdorojimo rezultatu. Jame pagrindinis dėmesys skiriamas faktinio sistemos naudojimo modeliavimui, bet nekuriamos jokios sistemos struktūros prielaidos. Straipsnyje pagrindinis dėmesys skiriamas funkcijų testavimo aptarimui.
Funkcinio testavimo privalumai
- Produktas be klaidų: Funkcinis testavimas užtikrina kokybiško ir be klaidų pristatymą.
- Klientų pasitenkinimas: Tai užtikrina, kad būtų įvykdyti visi reikalavimai ir kad klientas būtų patenkintas.
- Bandymai sutelkti į specifikacijas: Funkcinis testavimas yra orientuotas į specifikacijas pagal kliento naudojimą.
- Tinkamas programos veikimas: Tai užtikrina, kad programa veiks taip, kaip tikėtasi, ir užtikrina tinkamą visų programos funkcijų veikimą.
- Pagerina gaminio kokybę: Funkcinis testavimas užtikrina gaminio saugumą ir saugumą bei pagerina gaminio kokybę.
2. Nefunkcinis testavimas
Nefunkcinis testavimas yra tipas Programinės įrangos testavimas kuri atliekama siekiant patikrinti nefunkcinius programos reikalavimus. Jis patikrina, ar sistemos elgsena atitinka reikalavimus, ar ne. Jis išbando visus aspektus, kurie nėra tikrinami atliekant funkcinį testavimą. Nefunkcinis testavimas – tai programinės įrangos testavimo technika, tikrinanti nefunkcinius sistemos požymius. Nefunkcinis testavimas apibrėžiamas kaip programinės įrangos testavimo tipas, skirtas patikrinti nefunkcinius programinės įrangos aspektus. Jis skirtas patikrinti sistemos pasirengimą pagal nefunkcinius parametrus, į kuriuos niekada neatsižvelgiama atliekant funkcinį testavimą. Nefunkcinis testavimas yra toks pat svarbus kaip funkcinis testavimas.
Nefunkcinio testavimo privalumai
- Patobulintas našumas: Nefunkcinis testavimas tikrina sistemos veikimą ir nustato veikimo kliūtis, kurios gali turėti įtakos našumui.
- Mažiau laiko: Nefunkcinis testavimas apskritai užima mažiau laiko nei kitas testavimo procesas.
- Pagerina vartotojo patirtį: Nefunkcinis testavimas, pvz., Naudojimo testavimas, patikrina, ar programinė įranga yra lengvai naudojama ir patogi vartotojams. Taigi sutelkite dėmesį į tai, kad pagerintumėte bendrą programos naudotojo patirtį.
- Saugesnis produktas: Kadangi nefunkcinis testavimas konkrečiai apima saugos testavimą, kuris patikrina programos saugumo kliūtis ir tai, ar programa yra apsaugota nuo atakų iš vidinių ir išorinių šaltinių.
Funkcinio testavimo tipai
- Vieneto testavimas
- Integracijos testavimas
- Sistemos testavimas
1. Vieneto testavimas
Vieneto bandymas yra atskirų programinės įrangos vienetų arba komponentų testavimo metodas. Paprastai tai atlieka kūrėjai ir jie naudojami siekiant užtikrinti, kad atskiri programinės įrangos vienetai veiktų taip, kaip numatyta. Vienetų testai paprastai yra automatizuoti ir yra skirti patikrinti tam tikras kodo dalis, pvz., tam tikrą funkciją ar metodą. Vieneto testavimas atliekamas žemiausiu lygiu programinės įrangos kūrimo procesas , kur atskiri kodo vienetai tikrinami atskirai.
Vieneto testavimo pranašumai:
Kai kurie vienetinio testavimo pranašumai yra išvardyti žemiau.
- Tai padeda nustatyti klaidas ankstyvame kūrimo procese, kol jas ištaisyti tampa sunkiau ir brangiau.
- Tai padeda užtikrinti, kad pakeitus kodą neatsirastų naujų klaidų.
- Dėl to kodas yra labiau modulinis ir lengviau suprantamas bei prižiūrimas.
- Tai padeda pagerinti bendrą programinės įrangos kokybę ir patikimumą.
Pastaba: Kai kurios populiarios sistemos ir įrankiai, naudojami vienetų testavimui, apima JUnit , NUvienetas, ir xUnit.
- Svarbu nepamiršti, kad vienetinis testavimas yra tik vienas programinės įrangos testavimo aspektų ir jį reikia naudoti kartu su kitais testavimo tipais, tokiais kaip integravimo testavimas, funkcinis testavimas ir priėmimo testavimas, siekiant užtikrinti, kad programinė įranga atitiktų naudotojų poreikius. .
- Jame pagrindinis dėmesys skiriamas mažiausiam programinės įrangos projektavimo vienetui. Šiuo metu mes išbandome atskirą vienetą arba tarpusavyje susijusių vienetų grupę. Tai dažnai daro programuotojas, naudodamas pavyzdinę įvestį ir stebėdamas atitinkamus jo išėjimus.
Pavyzdys:
- Programoje tikriname, ar ciklas, metodas arba funkcija veikia gerai.
- Nesuprasta arba neteisinga, aritmetinė pirmenybė.
- Neteisingas inicijavimas.
2. Integracijos testavimas
Integracijos testavimas yra metodas, skirtas patikrinti, kaip skirtingi programinės įrangos vienetai arba komponentai sąveikauja tarpusavyje. Jis naudojamas identifikuoti ir išspręsti visas problemas, kurios gali kilti derinant skirtingus programinės įrangos vienetus. Integravimo testavimas paprastai atliekamas po vieneto testavimo ir prieš funkcinį testavimą ir naudojamas patikrinti, ar skirtingi programinės įrangos vienetai veikia kartu, kaip numatyta.
Įvairūs integracijos testavimo būdai:
Toliau aptariami įvairūs integracijos testavimo būdai.
- Integravimo iš viršaus į apačią testavimas: jis prasideda nuo aukščiausio lygio modulių ir išskiria juos nuo žemesnio lygio modulių.
- Integracijos testavimas iš apačios į viršų: jis prasideda nuo žemiausio lygio modulių ir integruoja juos su aukštesnio lygio moduliais.
- „Big-Bang“ integracijos testavimas: jis sujungia visus modulius ir integruoja juos visus iš karto.
- Laipsniškas integracijos testavimas: jis integruoja modulius į mažas grupes, išbandydamas kiekvieną grupę, kai ji pridedama.
Testavimo integravimo privalumai
- Tai padeda nustatyti ir išspręsti problemas, kurios gali kilti derinant skirtingus programinės įrangos vienetus.
- Tai padeda užtikrinti, kad skirtingi programinės įrangos vienetai veiktų kartu, kaip numatyta.
- Tai padeda pagerinti bendrą programinės įrangos patikimumą ir stabilumą.
- Svarbu nepamiršti, kad integracijos testavimas yra būtinas sudėtingoms sistemoms, kuriose yra integruoti skirtingi komponentai.
- Kaip ir vienetinio testavimo atveju, integravimo testavimas yra tik vienas programinės įrangos testavimo aspektų ir turėtų būti naudojamas kartu su kitais testavimo tipais, pvz., vienetų testavimu, funkciniu testavimu ir priėmimo testavimu, siekiant užtikrinti, kad programinė įranga atitiktų vartotojų poreikius.
The objektyvus yra paimti vienetais patikrintus komponentus ir sukurti programos struktūrą, kurią padiktavo dizainas. Integravimo testavimas yra bandymas, kai komponentų grupė sujungiama, kad būtų sukurta produkcija.
Integracijos testavimas yra keturių tipų: (i) „Iš viršaus į apačią“ (ii) „Iš apačios į viršų“ (iii) „Sumuštinis“ (iv) „Big-Bang“
Pavyzdys:
- Juodosios dėžės bandymas: Jis naudojamas patvirtinimui. Šiuo atveju mes ignoruojame vidinius darbo mechanizmus ir sutelkiame dėmesį į tai, kas yra išvestis?
- Baltos dėžutės bandymas: Jis naudojamas patikrinimui. Čia mes sutelkiame dėmesį į vidinius mechanizmus, ty kaip pasiekiamas rezultatas.
3. Sistemos testavimas
Sistemos testavimas yra programinės įrangos testavimo tipas, kurio metu įvertinamas visas pilno ir visiškai integruoto programinės įrangos sprendimo funkcionalumas ir našumas. Jis patikrina, ar sistema atitinka nurodytus reikalavimus ir ar ji tinkama pristatyti galutiniams vartotojams. Šio tipo testavimas atliekamas po integravimo testavimo ir prieš priėmimo testavimą.
Sistemos testavimas yra tipas programinės įrangos testavimas kuri atliekama visiškai integruotoje sistemoje, siekiant įvertinti sistemos atitiktį atitinkamiems reikalavimams. Sistemos testavimo metu kaip įvestis laikomi sėkmingo integravimo testavimo komponentai. Integravimo testavimo tikslas – aptikti bet kokius integruotų įrenginių nelygumus.
Sistemos testavimo pranašumai:
- Norint atlikti šį testavimą, testeriams nereikia daugiau programavimo žinių.
- Jis išbandys visą gaminį ar programinę įrangą, kad nesunkiai aptiktume klaidas ar defektus, kurių nepavyks nustatyti atliekant vienetų testavimą ir integravimo testavimą.
- Testavimo aplinka yra panaši į realaus laiko gamybos ar verslo aplinką.
- Jis tikrina visą sistemos funkcionalumą su skirtingais testavimo scenarijais, taip pat apima techninius ir verslo klientų reikalavimus.
- Po šio bandymo produktas beveik apims visas galimas klaidas, todėl kūrėjų komanda užtikrintai atliks priėmimo testus.
Integracijos testavimo tipai
- Laipsniškas testavimas
- Neprieauginis testavimas
1. Laipsniškas testavimas
Kaip ir kūrimas, testavimas taip pat yra etapas SDLC (programinės įrangos kūrimo gyvavimo ciklas) . Skirtinguose kūrimo ciklo etapuose atliekami skirtingi testai. Laipsniškas testavimas yra vienas iš testavimo metodų, kuris dažniausiai naudojamas programinės įrangos srityje testavimo etape. integracijos testavimas kuri atliekama po vieneto bandymas . Modulių testavimui vienas po kito naudojami keli šakneliai ir tvarkyklės, kurios padeda aptikti konkrečių modulių klaidas ir defektus.
Inkrementinio testavimo privalumai
- Kiekvienas modulis turi savo specifinę reikšmę. Kiekvienas iš jų turi atlikti savo vaidmenį testavimo metu, nes jis didėja atskirai.
- Defektai aptinkami mažesniuose moduliuose, o ne žymintys klaidas ir redaguoti bei iš naujo taisyti didelius failus.
- Tai lankstesnė ir ekonomiškesnė, atsižvelgiant į reikalavimus ir apimtį.
- Klientas turi galimybę atsakyti į kiekvieną pastatą.
Yra 2 tipai Laipsniškas testavimas
- Integracijos testavimas iš viršaus į apačią
- Integracijos testavimas iš apačios į viršų
1. Integracijos testavimas iš viršaus į apačią
Testavimas iš viršaus į apačią yra prieaugio tipas integracijos testavimas metodas, kai testavimas atliekamas integruojant arba sujungiant du ar daugiau modulių judant žemyn iš viršaus į apačią per architektūros struktūros valdymo srautą. Juose pirmiausia testuojami aukšto lygio moduliai, o po to – žemo lygio moduliai. Tada galiausiai atliekama integracija, siekiant užtikrinti, kad sistema veiktų tinkamai. Šiam projektui įgyvendinti naudojami stubukai ir tvarkyklės. Ši technika naudojama siekiant padidinti arba skatinti modulių, kurie nėra integruoti į žemesnį lygį, elgesį.
Privalumai Integracijos testavimas iš viršaus į apačią
- Nereikia rašyti tvarkyklių.
- Sąsajos klaidos nustatomos ankstyvoje stadijoje, o gedimų lokalizavimas taip pat yra lengvesnis.
- Žemo lygio komunalinės paslaugos, kurios nėra svarbios, nėra gerai testuojamos, o aukšto lygio testeriai yra tinkamai patikrinami.
- Pridėjus įvesties-išvesties funkcijas, testavimo atvejų vaizdavimas yra lengvesnis ir paprastesnis.
2. Integracijos testavimas iš apačios į viršų
Testavimas iš apačios į viršų yra prieaugio tipas integracijos testavimas metodas, kai testavimas atliekamas integruojant arba sujungiant du ar daugiau modulių judant aukštyn iš apačios į viršų per architektūros struktūros valdymo srautą. Juose pirmiausia testuojami žemo lygio moduliai, o po to – aukšto lygio moduliai. Šio tipo testavimas ar metodas taip pat žinomas kaip indukcinis samprotavimas ir daugeliu atvejų naudojamas kaip sintezės sinonimas. Testavimas iš apačios į viršų yra patogus vartotojui bandymas, dėl kurio padidėja bendras programinės įrangos kūrimas. Šis bandymas užtikrina aukštą sėkmės procentą ir ilgalaikius rezultatus.
Integracijos testavimo iš apačios į viršų privalumai
- Nesunku ir paprasta sukurti ir plėtoti bandymo sąlygas.
- Taip pat lengva stebėti testo rezultatus.
- Nebūtina žinoti apie konstrukcijos projekto detales.
- Žemo lygio komunalinės paslaugos taip pat yra gerai išbandytos ir taip pat yra suderinamos su objektine struktūra.
Nefunkcinio testavimo tipai
- Veikimo testavimas
- Naudojimo testavimas
- Suderinamumo testavimas
1. Veikimo testavimas
Veikimo testavimas yra programinės įrangos testavimo tipas, užtikrinantis, kad programinės įrangos programos tinkamai veiktų esant numatomam darbo krūviui. Tai testavimo metodas, skirtas nustatyti sistemos veikimą jautrumo, reaktyvumo ir stabilumo požiūriu esant tam tikram darbo krūviui.
Našumo testavimas yra programinės įrangos testavimo tipas, kurio tikslas - įvertinti sistemos ar programos našumą ir mastelį. Veiklos testavimo tikslas – nustatyti kliūtis, išmatuoti sistemos našumą esant įvairioms apkrovoms ir sąlygoms bei užtikrinti, kad sistema galėtų apdoroti numatomą vartotojų arba operacijų skaičių.
Našumo testavimo privalumai
- Veikimo testavimas užtikrina greitį, apkrovą, tikslumą ir kitus sistemos veikimus.
- Jis nustato, stebi ir išsprendžia problemas, jei kas nors atsitiktų.
- Tai užtikrina puikų programinės įrangos optimizavimą ir leidžia daugeliui vartotojų ja naudotis vienu metu.
- Tai užtikrina kliento ir galutinio vartotojo pasitenkinimą. Našumo testavimas turi keletą privalumų, dėl kurių jis yra svarbus programinės įrangos testavimo aspektas:
- Kliūčių nustatymas : Našumo tikrinimas padeda nustatyti sistemos kliūtis, pvz., lėtas duomenų bazių užklausas, nepakankamą atmintį arba tinklo perkrovą. Tai padeda kūrėjams optimizuoti sistemą ir užtikrinti, kad ji galėtų apdoroti numatomą vartotojų arba operacijų skaičių.
2. Naudojimo testavimas
Sukuriate gaminį (tarkime, šaldytuvą) ir kai jis visiškai paruoštas, reikia, kad potencialus klientas jį išbandytų ir patikrintų, ar jis veikia. Kad suprastų, ar mašina yra paruošta patekti į rinką, potencialūs klientai išbando mašinas. Taip pat geriausias tinkamumo naudoti testavimo pavyzdys yra tada, kai programinė įranga taip pat atlieka įvairius testavimo procesus, kuriuos potencialūs vartotojai atlieka prieš paleidžiant į rinką. Tai yra programinės įrangos kūrimo gyvavimo ciklo (SDLC) dalis.
Naudojimo testavimo privalumai ir trūkumai
Pirmenybė teikiama tinkamumo naudoti testavimui, norint įvertinti produktą ar paslaugą, išbandant jį su tinkamais vartotojais. Atliekant tinkamumo naudoti testavimą, kūrimo ir projektavimo komandos naudos problemoms nustatyti prieš kodavimą, todėl problemos bus išspręstos anksčiau. Naudojimo testo metu galite
- Sužinokite, ar dalyviai galės iki galo atlikti konkrečią užduotį.
- nustatyti, kiek laiko užtruks konkrečios užduoties atlikimas.
- Suteikia gaminiui puikių savybių ir funkcijų
- Pagerina vartotojų pasitenkinimą ir atitinka reikalavimus, remiantis vartotojų atsiliepimais
- Produktas tampa efektyvesnis ir efektyvesnis
3. Suderinamumo testavimas
Suderinamumo testavimas yra programinės įrangos testavimas, kuris patenka į nefunkcinis testavimas kategorijai, ir ji atliekama programoje, siekiant patikrinti jos suderinamumą (veikimo galimybes) skirtingose platformose / aplinkose. Šis bandymas atliekamas tik tada, kai programa tampa stabili. Tai reiškia, kad tiesiog šiuo suderinamumo testu siekiama patikrinti sukurtos programinės įrangos funkcionalumą įvairiose programinės įrangos, aparatinės įrangos platformose, tinklo naršyklėse ir pan. Šis suderinamumo testas yra labai svarbus gaminių gamybos ir diegimo požiūriu, nes jis atliekamas siekiant išvengti problemų dėl suderinamumo ateityje.
Suderinamumo testavimo privalumai
- Tai užtikrina visišką klientų pasitenkinimą.
- Jis teikia paslaugas keliose platformose.
- Klaidų nustatymas kūrimo proceso metu.
Yra 4 tipai Veikimo testavimas
- Apkrovos bandymas
- Testavimas nepalankiausiomis sąlygomis
- Mastelio keitimo testavimas
- Stabilumo testas
1. Apkrovos testavimas
Apkrovos testavimas nustato programos elgseną, kai ją vienu metu naudoja keli vartotojai. Tai sistemos atsakas, išmatuotas esant įvairioms apkrovos sąlygoms.
- Apkrovos bandymas atliekamas normaliomis ir ekstremaliomis apkrovos sąlygomis.
- Apkrovos testavimas yra našumo tikrinimo tipas, kuris imituoja realią sistemos ar programos apkrovą, kad pamatytų, kaip ji veikia esant įtampai.
- Apkrovos testavimo tikslas yra nustatyti kliūtis ir nustatyti maksimalų vartotojų ar operacijų, kurias gali atlikti sistema, skaičių.
- Tai yra svarbus programinės įrangos testavimo aspektas, nes padeda užtikrinti, kad sistema galėtų valdyti numatomus naudojimo lygius ir nustatyti galimas problemas prieš įdiegiant sistemą į gamybą.
Apkrovos testavimo pranašumai:
Apkrovos testavimas turi keletą privalumų, dėl kurių jis yra svarbus programinės įrangos testavimo aspektas:
- Kliūčių nustatymas: Apkrovos testavimas padeda nustatyti sistemos kliūtis, tokias kaip lėtos duomenų bazės užklausos, nepakankama atmintis arba tinklo perkrova. Tai padeda kūrėjams optimizuoti sistemą ir užtikrinti, kad ji galėtų apdoroti numatomą vartotojų arba operacijų skaičių.
- Patobulintas mastelio keitimas: Nustatant maksimalų sistemos pajėgumą, apkrovos testavimas padeda užtikrinti, kad sistema laikui bėgant gali apdoroti vis didesnį vartotojų ar operacijų skaičių. Tai ypač svarbu žiniatinklio sistemoms ir programoms, kurios turėtų valdyti didelį srautą.
- Padidintas patikimumas: Apkrovos testavimas padeda nustatyti visas galimas problemas, kurios gali kilti didelės apkrovos sąlygomis, pvz., padidėjusį klaidų dažnį arba lėtą atsako laiką. Tai padeda užtikrinti, kad sistema būtų patikima ir stabili, kai ji pradedama gaminti.
2. Testavimas nepalankiausiomis sąlygomis
Į Testavimas nepalankiausiomis sąlygomis , suteikiame sistemai nepalankias sąlygas ir patikriname, kaip ji tomis sąlygomis veikia.
Pavyzdys:
- Vykdomi bandomieji atvejai, kuriems reikia maksimalios atminties ar kitų išteklių.
- Išbandomi atvejai, dėl kurių virtualioje operacinėje sistemoje gali atsirasti trikdžių.
- Bandymo atvejai, dėl kurių gali reikėti per daug disko Našumo tikrinimas.
Jis skirtas patikrinti programinės įrangos veikimo laiką integruotos sistemos kontekste. Jis naudojamas programos greičiui ir efektyvumui patikrinti. Jis taip pat vadinamas apkrovos testavimu. Jame patikriname, koks yra sistemos našumas tam tikroje apkrovoje.
Pavyzdys:
Tikrinami keli procesoriaus ciklai.
3. Scalability Testing
Mastelio keitimo testavimas yra nefunkcinio testavimo tipas, kurio metu tikrinamas programinės įrangos, sistemos, tinklo ar proceso našumas, atsižvelgiant į jos gebėjimą padidinti arba sumažinti vartotojo užklausų įkėlimų skaičių arba kitus panašius našumo atributus. Tai gali būti atliekama techninės, programinės įrangos arba duomenų bazės lygiu. Mastelio testavimas apibrėžiamas kaip tinklo, sistemos, taikomosios programos, produkto ar proceso gebėjimas tinkamai atlikti funkciją, kai keičiami sistemos dydis ar apimtis, kad būtų patenkintas augantis poreikis. Tai užtikrina, kad programinės įrangos produktas gali valdyti suplanuotą vartotojų srauto padidėjimą, duomenų kiekį, operacijų skaičiavimo dažnumą ir daugelį kitų dalykų. Jis išbando sistemos, procesų ar duomenų bazės gebėjimą patenkinti augantį poreikį.
Mastelio testavimo privalumai
- Tai suteikia daugiau galimybių pasiekti produktą.
- Jis aptinka problemas, susijusias su tinklalapio įkėlimu ir kitomis našumo problemomis.
- Jis randa ir išsprendžia problemas anksčiau gaminyje, todėl sutaupoma daug laiko.
- Tai užtikrina galutinio vartotojo patirtį esant tam tikrai apkrovai. Tai užtikrina klientų pasitenkinimą.
- Tai padeda efektyviai sekti įrankių naudojimą.
4. Stabilumo testas
Stabilumo testas yra programinės įrangos testavimo tipas, skirtas patikrinti programinės įrangos kokybę ir elgseną esant skirtingiems aplinkos parametrams. Tai apibrėžiama kaip gaminio gebėjimas ir toliau veikti laikui bėgant be gedimų.
Tai nefunkcinis testavimo metodas, kurio metu didžiausias dėmesys skiriamas programinės įrangos komponentui. Stabilumo testavimas atliekamas siekiant patikrinti sukurto produkto efektyvumą, viršijantį įprastą veikimo pajėgumą, vadinamą lūžio tašku. Jis turi didesnę reikšmę klaidų apdorojimui, programinės įrangos patikimumui, tvirtumui ir gaminio mastelio keitimui esant didelei apkrovai, o ne tikrinant sistemos elgseną įprastomis aplinkybėmis.
Stabilumo testas įvertina stabilumo problemas. Šis bandymas daugiausia skirtas patikrinti, ar programa bet kuriuo metu sugenda, ar ne.
Stabilumo testavimo privalumai
- Tai suteikia ribą duomenų, kuriuos sistema gali praktiškai apdoroti.
- Tai suteikia pasitikėjimo sistemos veikimu.
- Jis nustato sistemos stabilumą ir tvirtumą veikiant apkrovai.
- Stabilumo testavimas suteikia geresnę galutinio vartotojo patirtį.
Kiti testavimo tipai
- Dūmų testavimas
- Sveiko proto testavimas
- Regresinis testavimas
- Priėmimo testas
- Vartotojo priėmimo testas
- Tiriamasis bandymas
- Adhoc testavimas
- Saugumo testavimas
- Globalizacijos testavimas
- Regresinis testavimas
- Dūmų testavimas
- Alfa testavimas
- Beta testavimas
- Objektinis testavimas
1. Dūmų bandymas
Dūmų testavimas atliekama siekiant įsitikinti, kad bandoma programinė įranga yra paruošta arba stabili tolesniam bandymui
Jis vadinamas dūmų bandymu, nes pradinio praėjimo bandymas atliekamas siekiant patikrinti, ar jis neužsidegė ar neužsidegė pirmą kartą įjungus.
Pavyzdys:
If the project has 2 modules so before going to the module make sure that module 1 works properly.>
Dūmų tyrimo privalumai
- Dūmų testą lengva atlikti.
- Tai padeda nustatyti defektus ankstyvosiose stadijose.
- Tai pagerina sistemos kokybę.
- Dūmų bandymas sumažina nesėkmės riziką.
- Dūmų testavimas palengvina pažangą.
2. Sveiko proto patikrinimas
Tai yra poaibis apie regresinis testas . Atliekamas sveiko proto patikrinimas, siekiant užtikrinti, kad kodo pakeitimai tinkamai veiktų. Sveiko proto testavimas yra sustabdymas, skirtas patikrinti, ar versijos testavimas gali būti tęsiamas, ar ne. Atliekant sveiko proto testavimo procesą, komandos tikslas yra patvirtinti programos funkcionalumą, o ne atlikti išsamų testavimą. Savarankiškumo bandymai paprastai atliekami sukūrus, kur gamybos diegimas reikalingas nedelsiant, kaip ir kritinės klaidos pataisymas.
Sveiko proto testavimo privalumai
- Sanity testavimas padeda greitai nustatyti pagrindinio funkcionalumo defektus.
- Tai gali būti atlikta per trumpesnį laiką, nes sveiko proto patikrinimui nereikia jokių dokumentų.
- Jei defektai nustatomi sveiko proto testavimo metu, projektas atmetamas, o tai padeda sutaupyti laiko regresijos testams atlikti.
- Šis testavimo būdas nėra toks brangus, lyginant su kito tipo testavimu.
- Tai padeda nustatyti priklausomus trūkstamus objektus.
3. Regresinis testavimas
Modifikuotų kodo dalių ir dalių, kurios gali turėti įtakos dėl modifikacijų, testavimo procesas užtikrina, kad po modifikacijų programinėje įrangoje neatsirastų naujų klaidų. Regresija reiškia kažko sugrįžimą, o programinės įrangos srityje tai reiškia klaidos grąžinimą.
kas yra klasterizacija
Regresinio testavimo privalumai
- Tai užtikrina, kad pridėjus naujas sistemos funkcijas nebus įvestų naujų klaidų.
- Kadangi dauguma regresijos testavimo testų yra atrenkami iš esamo testų rinkinio, ir mes jau žinome numatomus jų rezultatus. Taigi, jį galima lengvai automatizuoti naudojant automatinius įrankius.
- Tai padeda išlaikyti šaltinio kodo kokybę.
4. Priėmimo testas
Priėmimo testas atlieka klientai, norėdami patikrinti, ar pristatyta produkcija atlieka norimas užduotis, ar ne, kaip nurodyta reikalavimuose. Testavimo planams aptarti ir projektams vykdyti naudojame objektinį testavimą.
Priėmimo testo privalumai
- Šis testavimas padeda projekto komandai tiesiogiai sužinoti tolesnius vartotojų reikalavimus, nes į testavimą įtraukiami vartotojai.
- Automatizuotas testo vykdymas.
- Tai suteikia klientams pasitikėjimo ir pasitenkinimo, nes jie tiesiogiai dalyvauja testavimo procese.
- Vartotojui lengviau apibūdinti savo poreikius.
- Jis apima tik Black-Box testavimo procesą, todėl bus išbandytas visas gaminio funkcionalumas.
5. Vartotojo priėmimo testas
Vartotojo priėmimo testas yra testavimo metodika, kai klientai / galutiniai vartotojai dalyvauja gaminio testavime, kad patikrintų, ar produktas atitinka jų reikalavimus. Tai atliekama kliento svetainėje kūrėjo svetainėje. Tokiose pramonės šakose kaip medicina ar aviacija, sutarčių ir teisės aktų atitikties bandymai bei eksploataciniai priėmimo testai taip pat atliekami kaip vartotojų priėmimo bandymų dalis. UAT priklauso nuo konteksto, o UAT planai rengiami remiantis reikalavimais ir neprivalo atlikti visų rūšių vartotojų priėmimo testų, juos net koordinuoja ir prisideda testavimo komanda.
6. Tiriamasis bandymas
Tiriamasis bandymas yra tipas programinės įrangos testavimas kurioje testuotojas gali laisvai pasirinkti bet kokią galimą programinės įrangos testavimo metodiką. Tai nesudėtingas programinės įrangos testavimo metodas. Atliekant tiriamąjį testavimą, programinės įrangos kūrėjai naudoja savo mokymąsi, žinias, įgūdžius ir gebėjimus, kad išbandytų savo sukurtą programinę įrangą. Tiriamuoju testavimu tikrinamas programinės įrangos funkcionalumas ir veikimas bei nustatomi funkciniai ir techniniai jos gedimai. Tiriamuoju testavimu siekiama visais įmanomais būdais optimizuoti ir tobulinti programinę įrangą.
Žvalgomojo testavimo privalumai
- Reikia mažiau pasiruošimo: Tai nereikalauja jokio pasiruošimo, nes tai nenustatytas bandymo metodas.
- Suranda kritinius defektus: Tiriamasis testavimas apima tyrimo procesą, kuris padeda labai greitai rasti kritinius defektus.
- Pagerina produktyvumą: Atliekant tiriamąjį testavimą, bandytojai naudoja savo žinias, įgūdžius ir patirtį, kad išbandytų programinę įrangą. Tai padeda išplėsti bandytojų vaizduotę, atliekant daugiau bandymų atvejų, taip pagerinant bendrą programinės įrangos kokybę.
7. Adhoc testavimas
Adhoc testavimas yra programinės įrangos testavimo tipas, kuris atliekamas neoficialiai ir atsitiktinai po to, kai baigiamas formalus testavimas, siekiant rasti bet kokią sistemos spragą. Dėl šios priežasties jis taip pat žinomas kaip atsitiktinis arba beždžionių testavimas. Adhoc testavimas nėra atliekamas struktūriškai, todėl jis nėra pagrįstas jokiu metodiniu požiūriu. Štai kodėl Adhoc testavimas yra nestruktūrizuoto programinės įrangos testavimo tipas.
Adhoc testavimo privalumai
- Klaidos, kurių negalima nustatyti naudojant rašytinius bandymo atvejus, gali būti identifikuojamos naudojant Adhoc testavimą.
- Jis gali būti atliktas per labai ribotą laiką.
- Padeda sukurti unikalius bandomuosius atvejus.
- Šis testas padeda sukurti tvirtą produktą, kuris yra mažiau linkęs į ateities problemas.
- Šį testą galima atlikti bet kuriuo metu Programinės įrangos kūrimo gyvavimo ciklo procesas (SDLC)
8. Saugumo testavimas
Saugumo testavimas yra tipas Programinės įrangos testavimas kuri atskleidžia sistemos pažeidžiamumą ir nustato, kad sistemos duomenys ir ištekliai yra apsaugoti nuo galimų įsibrovėlių. Tai užtikrina, kad programinės įrangos sistema ir programa būtų be jokių grėsmių ar pavojų, galinčių sukelti nuostolių. Bet kurios sistemos saugumo testavimas yra orientuotas į visų galimų sistemos spragų ir trūkumų, dėl kurių gali būti prarasta informacija ar organizacijos reputacija, paieška.
Saugumo testavimo privalumai
- Pažeidžiamumų nustatymas: saugos testavimas padeda nustatyti sistemos spragas, kuriomis gali pasinaudoti užpuolikai, pvz., silpni slaptažodžiai, nepataisyta programinė įranga ir netinkamai sukonfigūruotos sistemos.
- Sistemos saugumo gerinimas: saugos testavimas padeda pagerinti bendrą sistemos saugumą nustatant ir ištaisant pažeidžiamumus ir galimas grėsmes.
- Atitikties užtikrinimas: saugos testavimas padeda užtikrinti, kad sistema atitiktų atitinkamus saugos standartus ir taisykles, pvz., HIPAA, PCI DSS ir SOC2.
9. Globalizacijos testavimas
Globalizacijos testavimas yra programinės įrangos testavimo tipas, kuris atliekamas siekiant užtikrinti, kad sistema arba programinė įranga galėtų veikti nepriklausomai nuo geografinės ir kultūrinės aplinkos. Tai užtikrina, kad programa gali būti naudojama visame pasaulyje, ir priima visų kalbų tekstus. Šiais laikais, plečiantis įvairioms technologijoms, kiekvienas programinės įrangos produktas kuriamas taip, kad tai būtų globalizuotas programinės įrangos produktas.
Globalizacijos testavimo privalumai
- Padeda sukurti keičiamo dydžio produktus: Tai daro programinės įrangos produktą lankstesnį ir keičiamo dydžio.
- Sutaupyti laiko: Tai sutaupo viso programinės įrangos testavimo laiko ir pastangų.
- Sutrumpinkite lokalizacijos bandymo laiką: Globalizacijos testavimas padeda sumažinti lokalizacijos testavimo laiką ir išlaidas.
10. Regresinis testavimas
Regresinis testas yra testavimo metodas, naudojamas siekiant užtikrinti, kad dėl programinės įrangos pakeitimų neatsirastų naujų klaidų arba nesugestų esamos funkcijos. Paprastai tai atliekama atlikus kodo pakeitimus, pvz., klaidų pataisymus ar naujas funkcijas, ir naudojama patikrinti, ar programinė įranga vis dar veikia taip, kaip numatyta.
Regresijos testavimas gali būti atliekamas įvairiais būdais, pavyzdžiui:
- Pakartotinis testavimas : Tai apima visos programos arba konkrečių funkcijų, kurioms paveikė pakeitimai, testavimą.
- Re – egzekucija : Tai apima anksčiau vykdyto bandymų rinkinio paleidimą, siekiant užtikrinti, kad pakeitimai nepažeis jokių esamų funkcijų.
- Palyginimas : Tai apima dabartinės programinės įrangos versijos palyginimą su ankstesne versija, siekiant užtikrinti, kad pakeitimai nepažeis jokių esamų funkcijų.
Regresinio testavimo privalumai
- Tai padeda užtikrinti, kad dėl programinės įrangos pakeitimų neatsirastų naujų klaidų arba nenutrūktų esamos funkcijos.
- Tai padeda užtikrinti, kad atlikus pakeitimus programinė įranga ir toliau veiktų taip, kaip numatyta.
- Tai padeda pagerinti bendrą programinės įrangos patikimumą ir stabilumą.
- Svarbu nepamiršti, kad regresinis testavimas yra nuolatinis procesas, kuris turėtų būti atliekamas visą programinės įrangos kūrimas
- gyvavimo ciklą, kad programinė įranga ir toliau veiktų taip, kaip numatyta. Norint sutaupyti laiko ir išteklių, jis turėtų būti kiek įmanoma automatizuotas. Be to, svarbu turėti aiškiai apibrėžtą regresijos testų rinkinį, kuris apimtų
Kiekvieną kartą, kai pridedamas naujas modulis, programa keičiasi. Šio tipo testavimas užtikrina, kad visas komponentas tinkamai veiktų net ir pridėjus komponentus prie visos programos.
Pavyzdys:
Tarkime, kad mokyklos įrašuose modulio darbuotojai, studentai ir finansai derina šiuos modulius ir tikrina, ar šių modulių integravimas veikia gerai regresijos testavimo metu.
11. Dūmų tyrimas
Dūmų testavimas atliekama siekiant įsitikinti, kad bandoma programinė įranga yra paruošta arba stabili tolesniam bandymui
Jis vadinamas dūmų bandymu, nes pradinio praėjimo bandymas atliekamas siekiant patikrinti, ar jis neužsidegė ar neužsidegė pirmą kartą įjungus.
Pavyzdys:
Jei projektas turi 2 modulius, prieš pereidami prie modulio įsitikinkite, kad 1 modulis veikia tinkamai.
12. Alfa testavimas
Alfa testavimas yra patvirtinimo testavimo tipas. Tai yra priėmimo testo tipas tai daroma prieš išleidžiant produktą klientams. Paprastai tai atlieka QA darbuotojai.
žiemos miego tarmė
Pavyzdys:
Kai programinės įrangos testavimas atliekamas organizacijos viduje.
13. Beta testavimas
The beta testas yra atliekama vienoje ar keliose klientų svetainėse galutinio programinės įrangos naudotojo. Ši versija yra išleista ribotam vartotojų skaičiui išbandyti realiuoju laiku.
Pavyzdys:
Kai programinės įrangos testavimas atliekamas ribotam žmonių skaičiui.
14. Objektinis testavimas
Objektinis testavimas testavimas yra įvairių testavimo metodų, padedančių patikrinti ir patvirtinti į objektą orientuotą programinę įrangą, derinys. Šis bandymas atliekamas taip:
- Reikalavimų tikrinimas,
- Testavimo projektavimas ir analizė,
- Kodo testavimas,
- integracijos testavimas,
- Sistemos testavimas,
- Vartotojo testavimas.
Programinės įrangos testavimo privalumai
- Pagerinta programinės įrangos kokybė ir patikimumas.
- Ankstyvas defektų nustatymas ir pašalinimas.
- Padidėjęs klientų pasitenkinimas.
- Padidėjęs suinteresuotųjų šalių pasitikėjimas.
- Sumažėjusios priežiūros išlaidos.
- Klientų pasitenkinimas
- Taupus
- Kokybiškas produktas
- Mažas gedimas
- Programa be klaidų
- Saugumas
- Paspartinkite kūrimo procesą
- Ankstyvas defektų nustatymas
- Patikimas produktas
Programinės įrangos testavimo trūkumai
- Atima daug laiko ir padidina projekto išlaidas.
- Tai gali sulėtinti vystymosi procesą.
- Ne visus defektus galima rasti.
- Gali būti sunku visiškai išbandyti sudėtingas sistemas.
- Žmogaus klaidos galimybė bandymo metu.
Klausimai praktikai
1. Kalbant apie programinės įrangos testavimą, apsvarstykite srauto grafiką G su vienu prijungtu komponentu. Tegul E yra briaunų skaičius, N yra mazgų skaičius, o P yra G predikatinių mazgų skaičius. Apsvarstykite šias keturias išraiškas: [GATE IT -2006]
- I. E-N+P
- II. E-N+2
- III. P+2
- IV. P+1
G ciklomatinį sudėtingumą nurodo
- (A) I arba III
- (B) II arba III
- (C) II arba IV
- (D) I arba IV
Sprendimas: Teisingas atsakymas yra (C).
Dažnai užduodami klausimai apie programinės įrangos testavimo tipus
1. Kas yra bandomasis atvejis?
Metai: Bandomieji atvejai gali būti tiesiog nustatyti kaip sąlygos, kuriomis bandytojas patikrins, ar kodas veikia puikiai, ar ne.
2. Kam naudingas automatizavimo testavimas?
Metai: Automatizavimo testavimas naudojamas siekiant sumažinti bandymo pastangas, taip pat testuojant greitesnį pristatymo pajėgumą.
3. Kuo skiriasi rankinis ir automatinis testavimas?
Metai: Rankinis testavimas apima žmogaus testuotoją, kuris sąveikauja su programine įranga, kad surastų klaidas. Automatinis testavimas naudoja scenarijus arba įrankius, kad automatizuotų pasikartojančius bandymo atvejus.