Discipline: Testování
Testování je disciplínou, která popisuje, jak efektivně získávat zpětnou vazbu o vytvářeném IS/ICT, a to prostřednictvím plánování, přípravy, provedení a vyhodnocování testů.
Relationships
Main Description

Testování hraje v procesu vývoje IS/ICT velmi důležitou roli, a to především proto, že umožňuje:

  • zajistit včasnou a častou zpětnou vazbu o tom, zda vyvíjený systém uspokojuje definované požadavky,
  • objektivně změřit pokrok obsažený v přírůstcích,
  • identifikovat nesrovnalosti a chyby řešení,
  • ověřit, zda provedené změny v již otestovaném řešení neovlivnily negativně jeho funkcionalitu.

Úlohy, které jsou do disciplíny Testování zahrnuty, jsou zachyceny na následujícím modelu. Jedná se o Plánování testů, Přípravu testů a Provedení testů, které by v různé míře měly být prováděny téměř ve všech iteracích životního cyklu vývoje IS/ICT. V závislosti na frekvenci dodávání nových buildů je dokonce možné, aby v rámci jedné iterace proběhlo několik testovacích cyklů.


Testování může být v rámci procesu vývoje prováděno jak manuálně, tak automaticky. Na menších projektech je preferováno testování manuální, a to z důvodu, že pro něj nejsou potřeba žádné speciální nástroje, což umožňuje šetřit náklady. Oproti tomu automatické testování vyžaduje obvykle vyšší znalosti testera či vývojáře, kteří vytvářejí a udržují testovací skript a samozřejmě musí být podporováno určitým nástrojem. Automatické testování je ale pro řadu typů testů (např. výkonnostní a zátěžové) vhodnější, především díky své rychlosti, neúnavnosti a také i díky tomu, že šetří práci testera. Automatické testy bývají využívány především pro tzv. regresní testování, které ověřuje, že úpravy stávajících funkcí či přidávání funkcionality nové, nepříznivě neovlivní již dříve otestované částí vyvíjeného IS/ICT. [Faustová, 2009] [Regresní testy, 2011]

Ačkoliv je v rámci této metodiky věnována hlavní pozornost testování manuálnímu, v okamžiku, kdy je to vhodné a projektový tým má k dispozici potřebný nástroj, je doporučováno využití testů automatických. Proces testování pomocí automatických a manuálních testů je ve své podstatě velmi podobný, a pokud jsou identifikovány určité rozdíly, je na ně v metodice upozorněno. Jednotkové testy (unit testy) funkčnosti částí zdrojového kódu, které je také možné zařadit do testů automatických, jsou v rámci této metodiky připravovány i prováděny Vývojáři, a proto jsou vyčleněny do disciplíny Vývoj, kde jsou také podrobněji popsány.

Testování je iterativní a inkrementální disciplínou, která se řídí základním heslem „Testuj často a co nejdříve“. Základním cílem, který Testování sleduje, je eliminovat všechna rizika, nedostatky a chyby co nejdříve je to možné.

Key Considerations

Testování, jeho úlohy a pracovní produkty v metodice MMSP vycházejí z [Šplíchalová, 2008].