Statické vs dynamické testování: Rozdíl mezi nimi
Rozdíl mezi statickým a dynamickým testováním
- Statické testování se provádí bez spuštění programu, zatímco dynamické testování se provádí spuštěním programu.
- Statické testování kontroluje kód, dokumenty požadavků a návrhové dokumenty za účelem nalezení chyb, zatímco dynamické testování kontroluje funkční chování softwarového systému, využití paměti/CPU a celkový výkon systému.
- Statické testování je o prevenci defektů, zatímco dynamické testování je o hledání a opravě defektů.
- Statické testování provádí proces ověřování, zatímco dynamické testování provádí proces ověřování.
- Statické testování se provádí před kompilací, zatímco dynamické testování se provádí po kompilaci.
- Statické testovací techniky jsou strukturální a prohlášení, zatímco dynamické testovací techniky jsou Boundary Value Analysis & Equivalence Partitioning.
Co je statické testování?
Statické testování je typ testování softwaru, ve kterém je softwarová aplikace testována bez spuštění kódu. Za účelem nalezení chyb se provádějí ruční nebo automatické kontroly kódu, dokumentů požadavků a návrhu dokumentu. Hlavním cílem statického testování je zlepšit kvalitu softwarových aplikací hledáním chyb v raných fázích procesu vývoje softwaru.
Statické testování zahrnuje manuální nebo automatické kontroly dokumentů. Tato kontrola se provádí během počáteční fáze testování, aby se závada včas zachytila STLC. Zkoumá pracovní dokumenty a poskytuje revizní komentáře. Nazývá se také testování bez provedení nebo ověřovací testování.
Příklady pracovních dokumentů -
- Specifikace požadavků
- Návrhový dokument
- Zdrojový kód
- Testovací plány
- testovacích případů
- Testovací skripty
- Nápověda nebo Uživatelský dokument
- Obsah webové stránky
Statické zkušební techniky
- Neformální Revvidí: Toto je jeden z typů recenzí, které nesledují žádný proces k nalezení chyb v dokumentu. V rámci této techniky si dokument pouze prohlížíte a dáváte k němu neformální komentáře.
- Technický Revvidí: Tým složený z vašich kolegů prozkoumá technickou specifikaci softwarového produktu a ověří, zda je vhodný pro daný projekt. Snaží se najít jakékoli nesrovnalosti ve specifikacích a dodržovaných normách. Tato recenze se soustředí především na technickou dokumentaci související se softwarem, jako je Test Strategy, Testovací plán a dokumenty specifikace požadavků.
- Návod: Autor pracovního produktu vysvětluje produkt svému týmu. Účastníci mohou klást případné dotazy. Schůzku vede autor. Scribe si poznámky k recenzi poznamená
- Inspekce: Hlavním účelem je hledání závad a jednání vede vyškolený moderátor. Tato recenze je formálním typem recenze, kde se postupuje podle přísného procesu hledání vady. Revdiváci mají k dispozici kontrolní seznam pro kontrolu pracovních produktů. Zaznamenají závadu a informují účastníky, aby tyto chyby odstranili.
- Statický kód Revpohled: Toto je systematická kontrola zdrojového kódu softwaru bez spuštění kódu. Kontroluje syntaxi kódu, standardy kódování, optimalizaci kódu atd. To se také nazývá testování bílé skříňky. Tuto kontrolu lze provést kdykoli během vývoje.
Co je dynamické testování?
Pod Dynamické testování, je proveden kód. Kontroluje funkční chování softwarového systému, využití paměti/cpu a celkový výkon systému. Odtud název „dynamický“
Hlavním cílem tohoto testování je potvrdit, že softwarový produkt funguje v souladu s obchodními požadavky. Toto testování se také nazývá technika provádění nebo ověřovací testování.
Dynamické testování spustí software a ověří výstup s očekávaným výsledkem. Dynamické testování se provádí na všech úrovních testování a může se jednat o testování v černé nebo bílé krabici.
Dynamické testovací techniky
- Testování jednotky: Pod Testování jednotek, jednotlivé jednotky nebo moduly jsou testovány vývojáři. Zahrnuje testování zdrojového kódu vývojáři.
- Testování integrace: Jednotlivé moduly jsou seskupeny a testovány vývojáři. Účelem je určit, které moduly po integraci fungují podle očekávání.
- Testování systému: Testování systému se provádí na celém systému kontrolou, zda systém nebo aplikace splňuje dokument specifikace požadavku.
Také nefunkční testování, jako je výkon, Testování bezpečnosti spadají do kategorie dynamického testování.
Statické testování vs. Dynamické testování
Statické testování | Dynamické testování |
---|---|
Testování bylo provedeno bez spuštění programu | Testování se provádí spuštěním programu |
Toto testování provádí proces ověřování | Dynamické testování provádí proces validace |
Statické testování je o prevenci defektů | Dynamické testování je o hledání a opravě defektů |
Statické testování poskytuje posouzení kódu a dokumentace | Dynamické testování poskytuje chyby/úzká místa v softwarovém systému. |
Statické testování zahrnuje kontrolní seznam a postup, který je třeba dodržet | Dynamické testování zahrnuje testovací případy pro provedení |
Toto testování lze provést před kompilací | Dynamické testování se provádí po kompilaci |
Statické testování zahrnuje strukturální testování a testování pokrytí prohlášení | Dynamické testovací techniky jsou Boundary Value Analysis & Equivalence Partitioning. |
Náklady na nalezení defektů a opravy jsou nižší | Náklady na nalezení a opravu závad jsou vysoké |
Návratnost investice bude vysoká, protože tento proces probíhá v rané fázi | Návratnost investice bude nízká, protože tento proces zahrnuje fázi vývoje |
Pro dobrou kvalitu důrazně doporučujeme další komentáře k recenzím | Pro dobrou kvalitu se důrazně doporučuje více vad. |
Vyžaduje spoustu schůzek | Poměrně vyžaduje menší počet schůzek |