Provádění přesného a správného testování softwaru se řídí mnoha principy. Mezinárodní rada pro kvalifikace testování softwaru (ISTQB) rozlišuje sedm základních, o kterých si dnes budeme povídat. Zajímá vás to? Přečtěte si článek o klíčových principech testování ISTQB!
Principy testování ISTQB – obsah:
- Testování odhaluje chyby, ale nemůže prokázat jejich nepřítomnost
- Důkladné testování je nemožné
- Včasné testování šetří čas a peníze
- Efekt sněhové koule poruch
- Paradox pesticidů
- Záleží na kontextu
- Reklama na bezchybný software je nepřijatelná
- Shrnutí
Testování odhaluje chyby, ale nemůže prokázat jejich nepřítomnost
Testování zvyšuje pravděpodobnost nalezení chyb, což zase usnadňuje jejich opravu. Nicméně, nemůže plně zaručit, že software je bez všech vad, i když většina z nich je odhalena a opravena. Vzhledem k neschopnosti vytvořit bezchybný software, mnozí považují tento proces za negativní záměrně, protože nikdy nedostanete pozitivní výsledek a vždy najdete nějaké “nečistoty” v programech.
Důkladné testování je nemožné
Výše uvedené pravidlo říká, že odhalení všech poruch softwaru je marné. To však neplatí pro jednoduché krátké programy. To naznačuje, že existuje šance vidět všechny kombinace vstupů a předpokladů pro úplné testování některých programů. Při hodnocení sofistikovaného softwaru ani nejlepší AI nemůže provést všechna nezbytná měření, natož manuální testeři. Automatizovaní hodnotitelé projdou aplikacemi efektivněji a přesněji, ale stále nemohou zaručit bezchybný výkon. K tomu musíte zahájit další úkoly, jako je prioritizace, analýza rizik a také hledání a provádění dalších testovacích technik.
Včasné testování šetří čas a peníze
Mnoho profesionálů také nazývá tento princip “posun vlevo.” Čím dříve odhalíte chyby, tím snadněji je můžete opravit, proto by statické a dynamické testování mělo začít co nejdříve. Stručně řečeno:
- Statické testování – hodnocení produktu bez spuštění kódu.
- Dynamické testování – hodnocení kódu modulu nebo systému během jeho výkonu
Odhalení chyb v prvních fázích implementace usnadňuje další diagnostiku. Ale když dvě oblasti softwaru interagují, oprava chyb se stává problematickou kvůli neschopnosti určit, která má chybu. V takových případech to vyžaduje další čas, úsilí a pracovní sílu. Celkově je to rychlá reakce na vznikající překážky, která může zabránit množení prasklin.
Efekt sněhové koule poruch
Většina poruch se obvykle shlukuje v nejkritičtějších modulech, takže jejich důkladné prozkoumání odhalí a dostatečně odstraní většinu. Tato skupina se stává hlavním zaměřením provádění analýzy rizik k mapování a stanovení budoucího postupu akcí. Většina vad se objevuje po sledování cest, kterými uživatelé procházejí, ale v těchto případech samotné znalosti nezaručují, že moduly jsou bezchybné.
Pareto princip říká, že 80 % výsledků pochází pouze z 20 % příčin. Jinými slovy, 80 % chyb existuje v 20 % modulů. Pokud narazíte na mnoho poruch v modulu, pokračujte v hledání, protože tam budou.
Paradox pesticidů
Opakované provádění stejných testů může selhat, protože mohly být navrženy nesprávně již na začátku a nikdy neprokážou účinnost. Musíte upravit a vylepšit testování, abyste zvýšili šanci na nalezení nových chyb v softwaru.
Vytvoření zcela nového systému diagnostiky také nepomůže. Následování předchozích kombinací může zastavit hodnotící proces na stejné úrovni. Tento princip je nazýván ‘paradox pesticidů’, protože pesticidy, které kontrolují škůdce, také ztrácejí účinnost po určitém množství použití.
Záleží na kontextu
Způsob provádění testování závisí na zkoumaných subjektech. Takže testování účetního programu, videohry nebo aplikace pro sociální sítě se výrazně liší. Závisí to také na situaci, například analýza zaměřená na praktičnost aplikace, jako je kontrola její atraktivity pro uživatele, snadnost použití, vizuální vrstva atd., se také liší od těch hodnocení zaměřených na funkční atributy programu, např. provádění správných výpočtů.
Reklama na bezchybný software je nepřijatelná
Použití různých typů diagnostických nástrojů nemůže zaručit bezchybné aplikace. Mnozí, kteří tvrdí a propagují své aplikace jako takové, se mýlí, ale pravděpodobně je to jen kvůli marketingovým snahám, které dělají. Můžete provést mnoho manuálních a automatizovaných testů, abyste zvýšili pravděpodobnost odhalení a opravy co nejvíce chyb, ale stále neexistuje záruka dokonalého výkonu. V některých případech se překážky týkají provozního softwaru, např. program nemusí splňovat všechna očekávání uživatelů.
Principy testování ISTQB – shrnutí
Toto je způsob, jakým ISTQB, na základní úrovni, představuje sedm principů testování ISTQB, kterými by se měl tester softwaru řídit. Nejprve naznačují nemožnost úplné diagnostiky softwaru, proto je důležité, mimo jiné, upravit testy a provést důkladné hledání v klíčových modulech. Tato opatření zvyšují hledání a odstranění většiny vad, čímž se snižuje pravděpodobnost selhání v budoucnu.
Co je testování softwaru? Nyní znáte odpověď! Podívejte se na naše další série o Pythonu a Javascriptech!
Pokud se vám náš obsah líbí, připojte se k naší komunitě pilných včel na Facebooku, Twitteru, LinkedInu, Instagramu, YouTube, Pinterestu.
Robert Whitney
Odborník na JavaScript a lektor, který školí IT oddělení. Jeho hlavním cílem je zvýšit produktivitu týmu tím, že učí ostatní, jak efektivně spolupracovat při programování.