Čo je negatívne testovanie? Testovacie prípady s príkladom

Obsah:

Anonim

Negatívne testovanie

Negatívne testovanie je typ testovania softvéru, ktorý sa používa na kontrolu neočakávaných vstupných údajov a podmienok softvérovej aplikácie. Neočakávané údaje alebo podmienky môžu byť čokoľvek, od nesprávneho typu údajov až po silný hackerský útok. Účelom negatívneho testovania je zabrániť zrúteniu softvérovej aplikácie v dôsledku negatívnych vstupov a zlepšiť kvalitu a stabilitu.

Iba pozitívnym testovaním sa môžeme ubezpečiť, že náš systém funguje za normálnych podmienok. Musíme sa uistiť, že náš systém dokáže zvládnuť neočakávané podmienky, aby sme zabezpečili 100% bezporuchový systém.

V tomto návode sa naučíte

  • Čo je negatívne testovanie?
  • Príklad negatívneho testovania
  • Prečo negatívne testovanie?
  • Ako robiť negatívne testy
  • Výhody negatívneho testovania
  • Nevýhody negatívneho testovania

Príklad negatívneho testovania

Zvážte prípad výťahu, ktorý je bežne považovaným príkladom negatívnych testov.

Všetci poznáme funkčnosť výťahu. To sa bude považovať za požiadavky výťahu, ako je stlačenie čísla poschodia, aby výťah prešiel na konkrétne poschodie.

Dvere sa automaticky otvoria, akonáhle výťah dosiahne určené poschodie atď.

Teraz zvážme niekoľko negatívnych scenárov pre zdvíhanie. Niektoré z nich sú,

Negatívne testovanie Pozitívne testovanie
  • Čo sa stane, ak počet osôb (hmotnosť) presiahne stanovený limit?
  • Predpokladá sa, že do výťahu vstúpi jediný určený počet osôb
  • Čo sa stane, ak vo vnútri výťahu niekto fajčí alebo spôsobí požiar?
  • Vo vnútri výťahu nebude žiadny dym ani oheň
  • Čo sa stane, ak počas prevádzky dôjde k výpadku prúdu?
  • Počas práce výťahu nedôjde k výpadku prúdu

Všetky tieto prípady budú negatívne testované. Dôležitá je skutočnosť, že nemôžeme zaistiť, aby sa nestalo všetko vyššie uvedené, preto ich potrebujeme obsahovať.

Zvážte prípad, že je skontrolovaný stav nadváhy a pri implementácii funguje výťah neobvykle, ak existuje stav nadváhy. To bude mať potenciálny dopad na spoľahlivosť systému a môže dokonca spôsobiť ohrozenie života. To vysvetľuje, čo je negatívne testovanie a jeho dôležitosť.

Rovnaký prípad sa uplatňuje aj v prípade softvéru. Pri negatívnom testovaní sme sa odchýlili od bežného prevádzkového postupu. Poďme si predstaviť niekoľko príkladov.

Zvážte napríklad registračný formulár.

Negatívne testovanie Pozitívne testovanie
  • Skúste do poľa pre e-mail zadať neplatný e-mail
  • Do e-mailového poľa budú zadané iba platné ID e-mailov
  • Skúste zadať neplatné telefónne číslo do poľa telefónneho čísla (znaky)
  • Do číselného poľa sa zadá jediné číslo
  • Nahrajte obrázok s veľkosťou mimo zadanú hranicu
  • Budú sa nahrávať iba obrázky s veľkosťou pod zadanou hranicou
  • Do poľa na nahrávanie obrázkov nahrajte neplatné súbory, ako sú XML, SQL atď
  • Nahrávajte iba platné formáty obrázkov, ako je jpg.webp.png.webp atď.

Ako sme už povedali, musíme sa ubezpečiť, že vo všetkých týchto negatívnych prípadoch bude náš systém fungovať správne. Zvážte prípad, ak sa niekto pokúsi zadať znak do poľa s číslom a systém nedokáže spracovať neočakávané údaje, pretože očakáva číslo. Nakoniec systém zlyhá. Alebo čo ak sa niekto pokúsi urobiť injekciu SQL a vymazať všetky naše údaje z databázy. Takéto potenciálne straty nemôžeme uniesť. Negatívne testovanie je teda dôležité.

Prečo negatívne testovanie?

Pretože testovanie je časovo a finančne náročná úloha, je skutočne dôležité rozhodnúť sa „čo“, „ako“ a „koľko“ testovať. Musíme si rozumne zvoliť, či musíme v našom systéme robiť negatívne testy alebo nie. Poďme sa teda pozrieť na dôležitosť negatívneho testovania.

Organizačná perspektíva

Poskytovanie kvalitného produktu klientovi je zodpovednosťou organizácie. Na dosiahnutie tohto cieľa je potrebné vykonať negatívne testy.

Ako súčasť potvrdenia o zlyhaní musí organizácia vykonať negatívne testovanie.

Možno nedokážeme vybudovať 100% bezchybný systém, ale musíme sa ubezpečiť, že sme urobili všetko preto, aby sme zabránili zlyhaniu, aby sme dosiahli negatívne testy.

Dopad je jedným z faktorov, ktoré musíme brať do úvahy. Zvážte, že sme na webe elektronického obchodu vykonali pozitívne testy a či je všetko v poriadku. Čo však v prípade, že v našom systéme existuje medzera v tom, že niekto môže urobiť injekciu SQL a vymazať všetky naše údaje. Bude to veľké narušenie bezpečnosti. Aby sa zabránilo tomuto typu prípadov, je potrebné vykonať aj negatívne testovanie.

Pri aplikáciách otvorených pre verejnosť, hlavne pri webových stránkach, musíme mať vždy na pamäti, že nemáme moc pod kontrolou postup používania aplikácie, takže musíme robiť negatívne testy, aby sme sa ubezpečili, že všetky tieto prípady sú zakryté a obsiahnuté.

Ďalšia vec, ktorú si musíme dať pozor, je, že je tu veľa čiernych hackerov, ktorí hľadajú príležitosť na zničenie systému. Hacking je dôležitý prípad zahrnutý v negatívnom testovaní

Perspektíva klienta

Klienti vždy očakávajú produkty s nulovou zraniteľnosťou, aby sa zabezpečilo, že negatívne testy sú nevyhnutnosťou

Ak sa jedná o citlivý produkt, ako je elektronický obchod, online zásoby atď., Potom je bezpečnosť a negatívne testovanie nevyhnutnosťou.

Jediným záujmom klienta, pokiaľ ide o negatívne testovanie, je cena. Ale akonáhle je dopad analyzovaný, je na klientovi, aby sa rozhodol, či urobí alebo nevykoná negatívne testovanie.

Ako urobiť negatívne testovanie

Pri negatívnom testovaní musíme brať do úvahy všetky možné prípady. Ak je to možné, musíme to v testovanom prípade vziať do úvahy bez ohľadu na to, či to nie je správny spôsob použitia. Napríklad, ak vidíme e-mailové pole, premýšľajte o všetkých možných vstupoch, ktoré tam môžeme vložiť, okrem správneho formátu e-mailu. Rovnako, keď vidíme možnosť nahrávania obrázkov, musíme ju otestovať so všetkými možnými súbormi.

Pri vytváraní negatívnych testovacích prípadov musíme uprednostniť vstupy, inak bude veľa prípadov. Napríklad pre pole obrázka, do ktorého sa majú vkladať iba súbory „.png.webp“, môžeme mať veľa možností nahrávania, ako napríklad „jpeg.webp“, „xml“, „xls“ atď. Takže musíme uprednostniť možnosti ako XML a SQL môžu mať väčší dopad ako dopady jpeg.webp a xls, preto by sme sa mali najskôr postarať o prípady SQL a XML. Takto musíme uprednostniť prípady pred vykonaním, aby sme ušetrili čas a náklady na testovanie.

Výhody a nevýhody negatívneho testovania

Rovnako ako všetky ostatné testovacie techniky, aj tu existujú klady a zápory pre negatívne testovanie založené hlavne na tom, „kde“, „kedy“ a „ako“ sa majú použiť. Poďme sa na to pozrieť.

Výhody negatívneho testovania

  • Ako všetci vieme, negatívne testy sú veľmi dôležité na zabezpečenie kvality produktu. Kvalitný produkt je produktom s nulovou zraniteľnosťou, aby sa zabezpečilo, že negatívne testy sú veľmi dôležité.
  • Vykonaním negatívnych testov sa zabezpečí, aby boli pokryté všetky možné prípady. Úmyselne alebo neúmyselne existuje pravdepodobnosť výskytu negatívnych testovacích prípadov. Aby sme sa uistili, že sú pokryté všetky prípady, musíme vykonať negatívne testovanie spolu s pozitívnym testovaním.
  • Negatívne testovanie zvýši dôveru klienta pred prechodom naživo.

Nevýhody negatívneho testovania

  • V softvérovom inžinierstve sa negatívne testovanie stáva v niektorých prípadoch stratou času a energie. V mnohých prípadoch nie je potrebné nadmerné negatívne testovanie. Napríklad, ak je aplikácia vytvorená pre použitie jednou osobou, potom nemusíme brať do úvahy prípad, že systém používa naraz 100 používateľov. Rozhodovanie o podmienkach v negatívnych testovacích prípadoch je teda veľmi dôležité. Občas sa stane, že nebudeme musieť robiť negatívne testy na konkrétnom systéme.
  • Vyžadujte od skúsených a skúsených ľudí, aby vytvorili negatívne testovacie prípady.
  • Pre klienta je negatívne testovanie ďalšou vecou, ​​ktorá spôsobuje zbytočné oneskorenie pri vydávaní a zvyšovanie nákladov.
  • Šanca, že tím strávi viac času a energie negatívnym testovaním. Je pravdepodobné, že testéri trávia veľa času a energie negatívnym testovaním, čo má za následok nižšiu koncentráciu pozitívneho testovania.