Negatiivne testimine tarkvara testimisel on tehnika, millega kontrollitakse, kuidas teie rakendus reageerib ootamatule käitumisele või kehtetutele andmetele. Seda tüüpi testimine võib aidata kvaliteeditagamise meeskonnal parandada oma tarkvara töökindlust ja stabiilsust, otsides välja erandeid, mis põhjustavad külmutusi, krahhi või muid soovimatuid tulemusi.
Selles artiklis uurime, mis on negatiivne tarkvara testimine, miks see on oluline ning milliseid erinevaid lähenemisviise, tehnikaid ja vahendeid saab selle tehnika puhul kasutada.
Mis on negatiivne tarkvara testimine?
Negatiivne testimine on tarkvara testimise meetod, mille puhul süsteemi sisestatakse tahtlikult ebatäpseid sisendeid või ootamatuid andmeid, et näha, kuidas süsteem nende stsenaariumidega toime tuleb. See lähenemisviis, mida tuntakse ka vigade testimise või veateede testimise nime all, simuleerib mitmesuguseid tegelikke stsenaariume, millega teie rakendus kokku puutub, näiteks kui kasutajad sisestavad valesid kuupäevi või sümboleid või kasutavad teatavaid funktsioone viisil, mida te kunagi ei kavatsenud.
Enamik testimise liike kasutab rakenduse testimiseks kehtivaid andmeid. Negatiivse testimise puhul kasutatakse aga teistsugust lähenemist, testides servade ümber ja väljaspool tüüpilisi sisendeid ning vaadates, kuidas rakendus käitleb erandeid.
Oluline on testida, et teie rakendus töötab nii, nagu on ette nähtud. Kuid teisest küljest on oluline ka mõista, mis juhtub siis, kui kasutajad lähevad reservatsioonist kõrvale, eriti kui need tahtmatud kasutusviisid põhjustavad krahhi, külmutusi või muid defekte.
Erinevus positiivse ja negatiivse testimise vahel
testimine tarkvara testimisel
Nagu eespool kirjeldatud, kasutatakse negatiivse testimise puhul süsteemi käitumise kontrollimiseks ootamatuid või vigaseid andmeid. Seevastu positiivne testimine surub oodatud või kehtivaid andmeid, et kontrollida, kas süsteem töötab ootuspäraselt.
Teisisõnu:
- Positiivne testimine aitab teil mõista, kas teie rakendus töötab nii nagu planeeritud
- Negatiivne testimine määrab kindlaks, kas teie rakendus suudab toime tulla ootamatute sündmustega.
Tarkvara testimisel on vaja nii positiivset kui ka negatiivset testimist, kui soovite oma rakendust rangelt testida.
Miks on negatiivne tarkvara testimine oluline?
Kui arendajad koostavad tarkvara, on neil selge ettekujutus sellest, kuidas nad eeldavad, et kasutaja seda tarkvara kasutab. Kasutajad ei järgi siiski alati reegleid. Sageli püüavad nad klõpsata nuppudele, mida ei ole olemas, sisestavad numbriväljadele tähti või proovivad sisestusi, mida te lihtsalt ei oota.
Negatiivse testimise eesmärk on võtta arvesse neid äärmuslikke juhtumeid, mida ei ole võimalik avastada positiivsete testimismeetoditega, nagu näiteks
üksus
,
süsteem
või
integratsioonitestimine
. See nõuab ebatraditsioonilist mõtlemist, et tulla välja “kõverate pallide” leidmiseks, mida süsteemi visata. Kuid lõpptulemus on stabiilsem ja töökindlam rakendus.
Mis on negatiivse testimise eesmärk
tarkvara testimisel?
Negatiivsel testimisel on sarnased eesmärgid nagu muudel tarkvara testimise liikidel. Nimelt, et avastada rakenduses olevad vead, defektid ja haavatavused. Siiski on sellel eriline roll selliste puuduste leidmisel, mida ei ole võimalik kehtivate andmete abil avastada. Siin on mõned põhjused, miks võtta kasutusele negatiivne testimise lähenemisviis.
1. Defektide paljastamine
Negatiivse testimise keskne eesmärk tarkvara testimisel on avastada defektid, mis tulenevad valedest andmetest või ootamatutest sisenditest. See võimaldab testijatel võtta proaktiivsemalt kasutusele vea tuvastamise ja tagada, et tarkvara vastab ootustele.
2. Turvalisus
Ootamatud sisendid või valed andmed võivad paljastada turvaauke. Nende äärmuslikkuste testimine ja lahendamine toob kaasa turvalisema ja töökindlama rakenduse, vähendades pahatahtlike rünnakute, süstimisvigade või volitamata juurdepääsu katsete võimalust.
3. Veakäitlus
Negatiivne testimine on kasulik veakäitluse valideerimiseks. See ei tähenda mitte ainult seda, et süsteem püsib stabiilsena pärast ootamatute sisendite või andmetega kokkupuutumist, vaid ka seda, kuidas ta reageerib nendele sündmustele, näiteks veateadete esitamine, et lõppkasutaja teaks, et andmed on kehtetud.
4. Testide katvuse parandamine
Positiivne ja negatiivne testimine tarkvara testimisel täiendavad teineteist tohutult. Mõlemad hõlmavad erinevaid andmesisestuse elemente, mis tähendab, et teie testimine on põhjalikum.
5. Parem kasutajakogemus
Negatiivne testimine aitab avastada veateadete, kokkupõrgete ja muude ootamatute käitumiste allikad, mis võivad kasutajakogemust negatiivselt mõjutada.
Erinevus positiivse ja negatiivse vahel
testimine tarkvaraarenduses
Nagu eespool mainitud, saadab negatiivne testimine süsteemi käitumise kontrollimiseks ootamatuid või kehtetuid andmeid. Positiivne testimine seevastu saadab oodatud või kehtivad andmed, et kontrollida, kas süsteem töötab ootuspäraselt.
Erinevus positiivse ja negatiivse testimise vahel on muu hulgas:
1. Eesmärgid:
Positiivse testimisega kontrollitakse, kas tarkvara töötab nii, nagu on ette nähtud; negatiivse testimisega püütakse mõista, mis juhtub soovimatute stsenaariumide korral.
2. Andmed:
Positiivne testimine kasutab kehtivaid andmeid ja negatiivne testimine kasutab kehtetuid sisendeid, äärmuslikke väärtusi ja ootamatuid vorminguid.
3. Fookus:
Positiivne testimine keskendub edukate stsenaariumide testimisele, samas kui negatiivne testimine on rohkem seotud ebaõnnestunud stsenaariumidega.
Erinevad negatiivsed testid
Negatiivne testimine on mõiste, mis hõlmab mitmeid erinevaid lähenemisviise rakenduse kvaliteedi ja terviklikkuse valideerimiseks. Siin on seitse liiki negatiivset testimist, mida peate teadma.
#1. Piirväärtuse testimine
Piirväärtuste testimise eesmärk on testida tarkvara sisendite abil, mis asuvad sisendvahemiku piiridel või servades. See testib nii maksimaalseid kui ka minimaalseid oodatavaid väärtusi, kuid testib ka vahetult pärast neid sisendeid.
Näide: Sisendväli võtab vastu numbreid vahemikus 1-9. Piirväärtuse test sisestab nii 1 kui ka 9, kuid testib ka 0 ja 10.
#2. Sisendväärtuse testimine
Sisendväärtuse testimine määrab kindlaks, kuidas süsteem reageerib ootamatutele või vigastele sisenditele. Mõned testitavad sisendid on järgmised:
- Väärad andmetüübid
- Väärtused, mis jäävad väljapoole vahemikku
- Erimärgid
- Tühjad väljad.
Näide: Seega sisestatakse testi käigus täht ja vaadatakse, kuidas süsteem reageerib.
#3. Koormuse testimine
Koormuse testimine
aitab testijatel hinnata, kuidas süsteem reageerib suurele koormusele või koormusele, näiteks suurtele andmekogumitele või suurele andmemahule.
Testimise automatiseerimise vahendid
saavad simuleerida neid äärmuslikke tingimusi, et mõista, kuidas süsteem reageerib koormuse all.
Näide: Testija simuleerib tuhandeid samaaegseid kasutajaid, kes pääsevad veebilehele ligi.
#4. Eranditestimine
Seda tüüpi testimine uurib, kuidas süsteem reageerib erakorralistele sündmustele või vigadele. Mõned testid hõlmavad järgmist
- Süsteemi kokkuvarisemise simuleerimine
- Võrguhäired
- Andmebaasi vead
- Kettaruumi probleemid
- Puuduvad failid.
Näide: Test võib uurida, mis juhtub, kui kasutaja laadib rakendusest alla faili ja internet on katkestatud.
#5. Turvalisuse testimine
Turvalisuse testimisel kasutatakse negatiivset testimisviisi, et tuua esile ja mõista tarkvara haavatavusi, mis võivad ilmneda vigaste või ootamatute sisendite tõttu. See lähenemisviis testib tavalisi rünnakuid, näiteks:
- SQL-süstimine
- Cross-site scripting (XSS)
- Puhvri ülevoolud.
Näide: Turvatest võib üritada sisestada pahatahtlikku koodi kasutaja sisendväljale.
#6. Kasutajaliidese testimine
Selline testimine keskendub vigadele, mis tekivad siis, kui kasutaja suhtleb tarkvaraga. Mõned asjad, mida ta püüab kindlaks teha, on järgmised:
- Ootamatud vastused kasutaja interaktsioonidele
- Väärad veateated
- Navigatsiooniprobleemid
Näide: Testi käigus uuritakse, mis juhtub, kui teatud tegevused sooritatakse väljaspool järjekorda.
#7. Andmete terviklikkuse testimine
Andmete terviklikkuse testimine tagab, et andmed on täpsed ja järjepidevad erinevates rakenduses tehtavates toimingutes. Mõned testitavad asjad on järgmised:
- Võimalikud andmete rikkumised
- Andmekadu stsenaariumid
- Andmete tahtmatu muutmine
Näide: Test kontrollib, et andmed jäävad pärast edastamist samaks.
Nagu näete, on palju erinevaid negatiivseid testimisviise. Ühine on neile kõigile ootamatute sisendite või vigaste andmete kasutamine, et näha, kuidas rakendus töötab ebatüüpilistes tingimustes.
Negatiivse testimise eelised
Negatiivne testimine tähendab arusaamist sellest, kuidas teie rakendus töötab ootamatutes olukordades. Siin on mõned selle lähenemisviisi kasutamise peamised eelised.
- See aitab teil mõista, millist mõju avaldavad ootamatud sisendid või vigased andmed teie rakendusele. Kas see kukub kokku? Sülitab välja ebatäpse veateate?
- Negatiivne testimine on osa vastutustundlikust kvaliteeditagamise lähenemisviisist, sest selle eesmärk on tuvastada süsteemi nõrgad kohad.
- Negatiivne testimine paneb tarkvara proovile, katsetades selle reageerimist ettenägematutele või ootamatutele stsenaariumidele, millega see looduses kokku puutub.
- Negatiivne testimine on jällegi oluline osa põhjalikust turvanägemisest, sest see toob esile võimalikud ründevektorid, mida küberründajad võivad ära kasutada.
Negatiivse testimise puudused
Negatiivne testimine pakub hulgaliselt eeliseid, kuid sellel on ka mõned puudused, mis tuleb ületada.
- Põhjalik negatiivne testimine võib nõuda täiendavat riist- ja tarkvara, mis võib suurendada testimise kulusid. Tiheda eelarvega meeskondade jaoks võib see olla ebasoodne.
- Negatiivne testimine võib olla üsna aeganõudev, sest see nõuab paljude testjuhtumite loomist, et katta erinevaid sisendmuutusi, millega tarkvara tootmises kokku puutub.
- Negatiivsete testidega saab katta vaid piiratud arvu ettearvamatuid olukordi. Tõepoolest, mõned olukorrad võivad olla nii ootamatud, et testijad ei saa nendega arvestada.
- Negatiivsete testjuhtumite automatiseerimine on keeruline. Kuid õige tarkvara, näiteks ZAPTEST, abil on protsess palju paremini hallatav.
Negatiivse testimise väljakutsed
Negatiivne testimine on väga oluline, kui soovite ehitada töökindlat ja usaldusväärset tarkvara, mis suudab vastu pidada kasutajate suhtlemise pingetele ja pingetele. Selle lähenemisviisi rakendamisel on siiski mõningaid probleeme, millest peate olema teadlik.
Võtame lahti mõned püsivamad väljakutsed.
1. Negatiivsete stsenaariumide tuvastamine tarkvara testimisel
Piisav katvus:
Üks suurimaid väljakutseid negatiivse testimise puhul on tagada, et katate piisavalt ootamatuid stsenaariume. Negatiivseid stsenaariume ja variatsioone on palju, nii et nende kõigi arvesse võtmine nõuab loomingulist lähenemist, et kujutleda, kuidas teie kasutajad tarkvaraga suhtlevad.
Prioriseerimine:
Kuna on nii palju võimalikke negatiivseid stsenaariume, mida mikroskoobi alla võtta, ei ole testijad alati kindlad, millest nad peaksid alustama. Mõned kindlad kriteeriumid selle hindamiseks, mida eelistada, hõlmavad prognoosimist:
- Olukorrad, kus on suur tõenäosus, et esineb defekte
- Defektide tulemuse tõsidus.
2. Adekvaatsete negatiivsete testjuhtumite kavandamine
Sisendi valideerimine:
Tugevate negatiivsete testjuhtumite kavandamine nõuab üsna põhjalikku arusaamist teie süsteemi käitumisest, arhitektuurist ja piirangutest. Tarkvara testimine nõuab hoolikalt kaalutud sisendite ja andmete kasutamist. Kuigi juhuslik lähenemine võib aidata teil avastada mõningaid defekte, jääb see võrreldes täpsema ja süstemaatilisema lähenemisega negatiivsele testimisele kahvatuks.
Andmete mitmekesisus:
Sõltuvalt teie süsteemi eripärast võib teil olla vaja testida üsna erinevate andmete põhjal. Tõepoolest, on olemas palju erinevaid andmeformaate, näiteks numbrid, tekst, kuupäevad jne, mida teie rakendus võib aktsepteerida. Väljakutse seisneb siinkohal selliste testjuhtumite kavandamises, mis suudavad arvesse võtta iga formaati ja eelkõige iga kehtetute andmete varianti. Selline olukord võib testimismeeskondade jaoks olla üsna aeganõudev.
3. Tõhusus ja testide automatiseerimine
Ajamahukas:
Positiivse testimise eesmärk on valideerida tarkvara oodatavate tulemuste suhtes. Negatiivne testimine seevastu peab süvenema ootamatustesse ja uurima võimalikke stsenaariume. Tundmatu territooriumi läbimine võtab rohkem aega. Selle tulemusena, kui soovite põhjalikke tulemusi, mis kaasnevad negatiivse testimisega, peate olema valmis investeerima mõned lisatunnid.
Automatiseerimise keerukus:
Negatiivne testimine võib olla aja- ja ressursimahukas. Seega on see ideaalne töö tarkvara testimise automatiseerimiseks. Siiski on mõned keerulised probleemid, mis tuleb ületada. Näiteks ootamatute sisendite jaoks oodatavaid tulemusi määratlevate testjuhtumite kavandamine nõuab mõningast kogemust ja oskusteavet. Lisaks sellele ei pruugi teie olemasolev automatiseerimistestide raamistik toetada kehtetuid andmeid, mida soovite rakendusse sisestada, mis lisab veel ühe keerukuse kihi.
4. Tulemuste hindamine
Valepositiivsed tulemused:
Testimise kalibreerimine, et tagada rahuldav tasakaal täpsuse ja põhjalikkuse vahel, on negatiivsete testide tegijatele tuttav teema. Mõnes olukorras ajab liiga tundlik veakäitlus valesti segi kehtivad sisendid negatiivsete sisenditega, mis viib aja raiskamiseni probleemidele, mis ei ole asjakohased.
Mitmetähenduslikud tulemused:
Kui süsteem saab vigase sisendi, võib see kaasa tuua krahhi, vigu või külmutamist. Paljudel juhtudel on see kindel märk veast. Teiste puhul on see aga tõendiks käsitlemata äärmuslikust juhtumist, millega arendajad ei ole arvestanud. Nende eraldiseisvate olukordade eristamine on oluline, kuid tegeliku põhjuse uurimine on aeganõudev.
Andmehaldus:
Negatiivne testimine nõuab märkimisväärset hulka andmeid. Seda testimisinfot tuleb nii luua kui ka säilitada. Tiheda ajakavaga arendusstsenaariumide puhul on see lisatöö, millega tuleb arvestada.
5. Organisatsioonilised küsimused
Negatiivse testimise oskusteabe puudumine:
Kuigi negatiivne testimine on populaarne, puuduvad paljudel testijatel oskused ja teadmised, et seda tüüpi testimist põhjalikult rakendada. Teatavate negatiivsete testjuhtumite kavandamine on vähem intuitiivne kui nende positiivsete testjuhtumite vaste. Veelgi enam, testide automatiseerimise rakendamine võib olla keeruline ilma õigete ekspertteadmisteta.
Ärisurve:
Sidusrühmad, testijad ja juhtkond peavad mõistma, et negatiivne testimine mängib tugevate rakenduste arendamisel kriitilist rolli. Kui selle tähtsust ei mõisteta, võib tekkida surve keskenduda positiivsele testimisele negatiivse testimise arvelt.
On selge, et meeskonnad, kes soovivad kasutada negatiivse testimise eeliseid, seisavad silmitsi mitmete väljakutsetega. Õige lähenemise ja õigete tarkvaratesti vahendite abil saate siiski nendest probleemidest üle saada ja luua tarkvara, mis ületab kasutajate ootusi.
Kuidas kirjutada tarkvara testimise negatiivseid testjuhtumeid
Tarkvara testimise negatiivsete testjuhtumite kirjutamine nõuab mõningast kogemust ja loomingulist mõtlemist. Siin on samm-sammuline juhend, mis aitab teil neid kriitilisi testjuhtumeid koostada.
#1. Seadke oma eesmärgid
Enne tarkvara testimise negatiivsete testjuhtumite kirjutamist peate mõistma, miks soovite negatiivset testimist läbi viia. Negatiivne testimine ei ole kasulik kõigile rakendustele.
Niisiis, saage aru, mida te tahate saavutada. Negatiivne testimine on mõeldud selleks, et tuua välja vead ja tõrked, mis tulenevad ootamatutest kasutajaskäitumise stsenaariumidest või tingimustest.
#2. Võimalikud negatiivsed stsenaariumid
Järgmisena peate arvestama, millised negatiivsed stsenaariumid võivad tekkida, kui kasutajad teie tarkvaraga suhtlevad. Selle sammu ajal on teadusuuringud üliolulised. Mõned valdkonnad, mida peaksite uurima, on järgmised:
- Süsteeminõuded
- Tüüpilised kasutusjuhud
- Rakenduse omadused ja funktsioonid
Uurige neid olukordi ja koostage nimekiri stsenaariumidest, mille puhul rakendus ei pruugi toimida nii, nagu te olete kavandanud.
Seejärel kaaluge kriitilise sisendi valideerimise stsenaariume. Tavaliselt hõlmab see andmete sisestamise vorme, sisselogimisvälju jne.
Lõpuks, arvestage ka arvukate ebatavaliste viisidega, kuidas kasutajad võivad teie tarkvaraga suhelda, ja ootamatute sündmustega, mis võivad põhjustada negatiivseid tulemusi, nagu võrguühenduse katkemine, süsteemi järsk väljalülitamine, massiline andmeedastus jne.
Kui olete dokumenteerinud võimalikult palju stsenaariume, on aeg määrata kindlaks nende ootamatute stsenaariumide oodatavad tulemused.
#3. Eeldatavad tulemused
Igal testjuhtumil peab olema oodatav tulemus, ja negatiivne testjuhtum ei erine sellest. Parim tava on siinkohal iga negatiivse stsenaariumi üleskirjutamine ja selle tulemuse kindlaksmääramine.
Mõned võimalikud tulemused võivad olla järgmised:
- Täpsed ja informatiivsed veateated
- Asjakohased ümbersuunamised
- Süsteemi graatsionaalne käitlemine, näiteks süsteemi külmutamise või kokkuvarisemise vältimine.
#4. Valige sisendid testimiseks
Nüüd on aeg vaadata, milliseid sisendeid on vaja testida. Need sisendid peaksid olema need, mis kõige tõenäolisemalt põhjustavad vea või muud negatiivset käitumist.
Mõned sisendid, mida peate lisama, on järgmised:
- Vahemikust väljas olevad väärtused (negatiivsed väärtused vanuse väljal jne.)
- Väärad andmed (tähed numbriväljas jne.)
- Ootamatud tähemärgid või sümbolid
- Erimärgid
- Puuduvad andmed
#5. Kirjutage oma testjuhtumid
Kui olete kõik stsenaariumid kokku kogunud, on aeg kirjutada testjuhtumid. Negatiivse testimise puhul on peaaegu piiramatu arv testjuhtumeid, mida võiksite kirjutada. Lõppude lõpuks on seda tüüpi testimise eesmärk välja selgitada, mis juhtub, kui inimesed kasutavad tarkvara viisil, mida te ei kavatsenud. Tähtaegade tõttu on aga vaja võimalike juhtumite loetelu kärpida olukordadeks, mis kõige tõenäolisemalt probleeme tekitavad.
Nagu alati, kirjutage oma testjuhtumid selgelt, lühidalt ja objektiivselt. Siin ei ole ruumi ebaselguseks.
Siin on hea vorming teie negatiivsete testjuhtumite jaoks.
- Kasutage testjuhtumi ID-d
- Kirjeldage täpselt, mida testitakse
- Märkige oma negatiivse testi võimalikud eeltingimused
- Kirjeldada asjaomaseid samme
- Kehtestada selged ja objektiivsed tulemused
- Märkige üles oma katse tegelik tulemus
#6. Testi ajakava
Nüüd peate oma testid planeerima. Ka siin on oluline seada esikohale stsenaariumid, millel on kõige tõsisemad negatiivsed tagajärjed, näiteks õnnetused, või kus probleemid on kõige tõenäolisemad.
Näide negatiivsest testjuhtumist
Siin on näide negatiivse testjuhtumi kohta.
Katsejuhtumi ID: TC001
Kirjeldus: Kontrollida, et veateade kuvatakse, kui kasutaja sisestab vale e-posti aadressi.
Eeltingimused: Kasutaja peab olema rakenduse sisselogimise lehel
Sammud: 1. Sisestage vale e-posti aadress. 2. Vajutage “Logi sisse”
Oodatav tulemus: Kui kasutaja vajutab “Logi sisse”, ilmub veateade “vale e-posti aadress sisestatud”.
Tulemused: Salvestage, mis juhtus, kui valiti “Logi sisse”.
Negatiivsete stsenaariumide näited tarkvara testimisel
Siin on mõned tüüpilised stsenaariumid, mida saate kontrollida negatiivsete testimismeetodite abil.
1. Andmete ja väljade tüübid
Kui olete täitnud veebis mõne vormi, siis teate, et need kastid on seatud teatud tüüpi andmete vastuvõtmiseks. Mõned on ainult numbrid, teised aga aktsepteerivad kuupäevi, teksti või muud liiki andmeid.
Nende lahtrite negatiivne testimine hõlmab kehtetute andmete saatmist, näiteks tähtede sisestamist numbriväljale.
2. Kohustuslikud väljad
Jällegi on nõutavad väljad vormide ja rakenduste tavalised omadused. Need on praktiline vahend, millega tagatakse, et kogu kriitiline teave on kogutud, enne kui kasutaja jätkab järgmisesse etappi.
Nende stsenaariumide hea testjuhtum hõlmab selle vaatamist, mis juhtub, kui need väljad jäetakse tühjaks. Ideaaljuhul peaks käivituma veateade, mis kutsub kasutajat üles täitma nõutavat välja.
3. Asjakohane tähemärkide arv
Kui teil on testitav veebilehtede rakendus, võib teil olla andmeväli, mis nõuab piiratud arvu tähemärke. See võib olla kasutajanimed, telefoninumbrid, registreerimisnumbrid jne.
Nende väljade jaoks saab luua negatiivseid testjuhtumeid, kirjutades teste, mis sisestavad rohkem kui lubatud tähemärke, et näha, kuidas rakendus reageerib.
4. Andmete piirid ja piirangud
Teatud vormidel on fikseeritud piirangutega väljad. Näiteks kui soovite, et keegi hindaks midagi 100-st, oleks andmete piirid 1-100.
Looge negatiivne testjuhtum, kus proovite sisestada 0, 101 või muid negatiivseid või positiivseid väärtusi vahemikust 1-100.
Negatiivse testimise parimad tavad
Kvaliteetse negatiivse testimise tagamiseks on mitmeid parimaid tavasid. Siin on mõned näpunäited, mis aitavad teil selleni jõuda.
1. Määrake oma kehtetud sisendid:
Vaadake üle arendusdokumentatsioon, kasutusjuhendid ja UI/UX, et mõista ja tuvastada võimalikke vigaseid sisendeid. Jälgige vigaseid andmetüüpe, äärmuslikke väärtusi, puuduvaid andmeid, tühje välju, ootamatuid vorminguid ja muud.
2. Kasutage piirväärtuste analüüsi:
Nagu eespool mainitud, visandage oma piirväärtused, et leida äärmuslikke juhtumeid, mis võivad põhjustada ootamatuid reaktsioone.
3. Töötajate võrdväärsuse jaotamine:
Vaadake oma sisenddomeene ja jagage need nii kehtivate kui ka kehtetute väärtuste ekvivalentsusjaotusteks. See protsess aitab vähendada testjuhtumite arvu, mida peate kirjutama, sest kui samaväärne vigane andmestik põhjustab probleeme ühe sisendi puhul, on see tõenäoliselt esindatud kogu klassis.
4. Matkige halbu kasutajaid:
Positiivne testimine kontrollib kasutaja oodatavat käitumist. Negatiivne testimine uurib, mis juhtub, kui inimesed teie rakendust väärkasutavad. Seega mõelge erinevate stsenaariumide peale, kus see võib juhtuda, ja korrake neid oma testjuhtumites.
5. Laske riskil ja mõjul juhtida oma testimist:
Ühelgi testijal ei ole piiramatut aega. Mingil hetkel peate tegema raskeid valikuid, sest te ei saa testida (või isegi teada) kõiki ootamatuid tulemusi. Kui teil on vaja otsustada, milliseid negatiivseid teste teha, seadke prioriteediks need valdkonnad, mis toovad teie tootele kõige suurema riski või negatiivse mõju.
6. Veakäitluse kontrollimine:
Veenduge, et teete veakäitluse oma testimise osaks, kontrollides, et veateated on kasulikud ja täpsed.
7. Automatiseeri nii palju kui võimalik:
Automatiseerimine on osav igapäevaste ja korduvate ülesannete lahendamisel. Negatiivne testimine eeldab siiski käsitsi lähenemist uurivale testimisele ja äärmuslikele juhtumitele.
Parimad negatiivsed testimisvahendid aastaks 2024
Kuigi negatiivne tarkvara testimine on kogu tööstusharus levinud, puuduvad selleks tööks vajalikud vahendid. Selle peamine põhjus on negatiivsete testide mitmekülgne iseloom. Veelgi enam, paljud samad tööriistad, mida kasutatakse positiivsete testide tegemiseks, toimivad ka negatiivsete testide tegemiseks, kui kohandate sisendandmeid.
ZAPTEST on parim vahend negatiivsete testide tegemiseks, sest see on mitmekülgne ja modulaarne. Seda on lihtne kasutada ja kohandada ning tänu platvormi- ja rakendustevahelistele võimalustele pakub see paindlikkust, mida on raske ületada.
Andmepõhine testimine ja
mutatsioonitestimine
funktsionaalsus teeb ZAPTESTi ideaalseks negatiivse testimise jaoks. Veelgi enam, tänu oma RPA funktsioonide abil saate simuleerida reaalseid kasutajaid, taaskasutada teste ning koostada hõlpsasti aruandeid ja dokumentatsiooni. Lühidalt öeldes muudab ZAPTESTi võime käivitada tipptasemel tarkvaraautomaatikat ja robotprotsesside automatiseerimise tarkvara üheks peatuspaigaks mis tahes automatiseerimisülesannete, sealhulgas negatiivse testimise jaoks.
Lõplikud mõtted
Negatiivne testimine tarkvara testimisel aitab meeskondadel mõista, kuidas nende rakendus käitub ootamatute sisendite ja kehtetute andmetega. Kui positiivse testimisega testitakse, kas teie tarkvara toimib nii, nagu on ette nähtud, siis negatiivne tarkvara testimine aitab teil välja selgitada, mis juhtub, kui kasutajad valivad sisendeid ja andmeid valesti. Mõlemad lähenemisviisid on olulised, kui soovite kindlat ja töökindlat rakendust, mis suudab toime tulla mitmesuguste kasutajate suhtluse pingetega.