Statické testovanie vs dynamické testovanie: Aký je rozdiel?

Obsah:

Anonim

Čo je statické testovanie?

Statické testovanie je typ testovania softvéru, pri ktorom sa testuje softvérová aplikácia bez vykonania kódu. Na nájdenie chýb sa vykonávajú ručné alebo automatizované kontroly kódu, dokumentov s požiadavkami a návrhu dokumentu. Hlavným cieľom statického testovania je zlepšiť kvalitu softvérových aplikácií hľadaním chýb v počiatočných fázach procesu vývoja softvéru.

Statické testovanie zahŕňa manuálne alebo automatizované kontroly dokumentov. Táto kontrola sa robí počas úvodnej fázy testovania, aby sa chyba zachytila ​​na začiatku STLC. Skúma pracovné dokumenty a poskytuje komentáre k recenziám. Nazýva sa tiež Nevykonávacie testovanie alebo overovacie testovanie.

Príklady pracovných dokumentov -

  • Špecifikácie požiadaviek
  • Projektový dokument
  • Zdrojový kód
  • Plány skúšok
  • Testovacie prípady
  • Testovacie skripty
  • Pomocník alebo dokument používateľa
  • Obsah webovej stránky

Čo je to dynamické testovanie?

Pri dynamickom testovaní sa vykoná kód. Kontroluje funkčné správanie softvérového systému, využitie pamäte / procesora a celkový výkon systému. Odtiaľ pochádza aj názov „Dynamický“

Hlavným cieľom tohto testovania je potvrdiť, že softvérový produkt funguje v súlade s obchodnými požiadavkami. Toto testovanie sa nazýva aj technika vykonávania alebo validačné testovanie.

Dynamické testovanie vykoná softvér a overí výstup s očakávaným výsledkom. Dynamické testovanie sa vykonáva na všetkých úrovniach testovania a môže ísť buď o testovanie čiernej alebo bielej skrinky.

KĽÚČOVÝ ROZDIEL

  • Statické testovanie sa uskutočnilo bez vykonania programu, zatiaľ čo dynamické testovanie sa vykoná vykonaním programu.
  • Pri statickom testovaní sa zisťujú chyby v dokumentoch, požiadavkách a dokumentoch o dizajne, zatiaľ čo pri dynamickom testovaní sa kontroluje funkčné správanie softvérového systému, využitie pamäte / procesora a celkový výkon systému.
  • Statické testovanie je o prevencii chýb, zatiaľ čo dynamické testovanie je o hľadaní a opravovaní chýb.
  • Statické testovanie vykonáva proces overovania, zatiaľ čo dynamické testovanie vykonáva proces overovania.
  • Pred kompiláciou sa vykoná statické testovanie, zatiaľ čo po kompilácii sa vykoná dynamické testovanie.
  • Techniky statického testovania sú štrukturálnym pokrytím a pokrytím príkazov, zatiaľ čo techniky dynamického testovania sú analýzou hraničných hodnôt a rozdelením ekvivalencie.

Techniky statického testovania:

  • Neformálne recenzie: Toto je jeden z typov kontroly, ktorý nevykonáva žiadny proces a nenájde chyby v dokumente. Podľa tejto techniky dokument iba skontrolujete a budete k nemu neformálne komentovať.
  • Technické kontroly : Tím zložený z vašich kolegov, ktorý skontroluje technickú špecifikáciu softvérového produktu a skontroluje, či je vhodný pre daný projekt. Pokúšajú sa nájsť nezrovnalosti v dodržaných špecifikáciách a normách. Toto preskúmanie sa zameriava hlavne na technickú dokumentáciu súvisiacu so softvérom, ako sú napríklad stratégia testovania, plán testov a dokumenty so špecifikáciami požiadaviek.
  • Návod: Autor produktu práce vysvetľuje produkt svojmu tímu. Účastníci môžu klásť otázky, ak nejaké existujú. Stretnutie vedie autor. Program Scribe si všíma komentáre k recenziám
  • Inšpekcia: Hlavným účelom je nájsť chyby a stretnutie vedie vyškolený moderátor. Táto kontrola je formálnym typom kontroly, pri ktorej sa zisťuje závada podľa prísneho postupu. Recenzenti majú kontrolný zoznam na skontrolovanie pracovných produktov. Zaznamenajú chybu a informujú účastníkov o odstránení týchto chýb.
  • Kontrola statického kódu: Toto je systematické preskúmanie zdrojového kódu softvéru bez vykonania kódu. Kontroluje syntax kódu, štandardy kódovania, optimalizáciu kódu atď. Nazýva sa to tiež testovanie v bielom poli. Túto kontrolu je možné vykonať kedykoľvek počas vývoja.

Techniky dynamického testovania:

  • Testovanie jednotiek: V rámci Testovania jednotiek vývojári testujú jednotlivé jednotky alebo moduly. Zahŕňa testovanie zdrojového kódu vývojármi.
  • Testovanie integrácie: Jednotlivé moduly sú zoskupené a testované vývojármi. Účelom je určiť, ktoré moduly fungujú podľa očakávania, akonáhle budú integrované.
  • Testovanie systému: Testovanie systému sa vykonáva na celom systéme kontrolou, či systém alebo aplikácia vyhovuje dokumentu so špecifikáciou požiadaviek.

Nefunkčné testovanie, ako napríklad výkon, testovanie bezpečnosti spadá do kategórie dynamického testovania.

Rozdiel medzi statickým a dynamickým testovaním:

Statické testovanie

Dynamické testovanie

Testovanie sa uskutočnilo bez vykonania programu Testovanie sa vykonáva vykonaním programu
Týmto testovaním sa vykoná proces overenia Dynamické testovanie robí proces validácie
Statické testovanie je o prevencii porúch Dynamické testovanie je o hľadaní a opravovaní chýb
Statické testovanie poskytuje posúdenie kódu a dokumentácie Dynamické testovanie poskytuje chyby / úzke miesta v softvérovom systéme.
Statické testovanie zahŕňa kontrolný zoznam a postup, ktorý je potrebné dodržať Dynamické testovanie zahŕňa testovacie prípady na vykonanie
Toto testovanie je možné vykonať pred kompiláciou Dynamické testovanie sa vykonáva po kompilácii
Statické testovanie sa týka testovania štrukturálneho a príkazového pokrytia Techniky dynamického testovania sú analýza hraničných hodnôt a rozdelenie ekvivalencie.
Náklady na nájdenie závady a opravu sú menšie Náklady na nájdenie a odstránenie chýb sú vysoké
Návratnosť investícií bude vysoká, pretože tento proces zahŕňal v ranom štádiu Návratnosť investícií bude nízka, pretože tento proces zahŕňa po fáze vývoja
Pre dobrú kvalitu sa dôrazne odporúča viac recenzií Pre dobrú kvalitu sa dôrazne odporúča viac vád.
Vyžaduje veľa stretnutí Porovnateľne si vyžaduje menšie stretnutia