courses

Kdy se vyplatí použít automatické testování?

Většina velkých firem se v současné době potýká s otázkou, jak ušetřit náklady, zefektivnit procesy a najít co nejjednodušší cestu k úspěchu. Výhodnou variantou, jak toho docílit, je začlenit do vývoje automatizované testování. Automatické testování je vlastně kontrola kódu mobilní nebo webové aplikace, jehož cílem je zjistit, jestli všechno správně běží. V tomto článku se na něj podíváme trochu detailněji.

black flat screen computer monitor

Pokud bychom to vzali trochu odborněji, tak o automatizovaném testování mluvíme, když je část testovacího procesu (nebo klidně celý proces), prováděn bez přímého působení člověka, a to pomocí specializovaného softwaru. Samozřejmě je jedno, jestli testujeme jen část aplikace či procesu, nebo celý(ou), záleží jen na nástroji, který na to použijeme. Existuje totiž celá řada programů, díky kterým můžeme automatizované testování provést a jejich vhodnou kombinací si můžeme pomoci s automatizováním celého procesu kontroly.

Kdy se vyplatí automatizované testování použít?
U jednoduchých aplikací je možné při úpravách kontrolovat kód osobně, ale pokud pracuješ s obtížnějšími a většími záležitostmi, určitě se vyplatí sáhnout po automatickém testování, abys nemarnil(a) čas zdlouhavým hledáním chyby v nekonečném kódu.
Automatizace má smysl ve chvíli, kdy při práci narážíme na opakující se úlohy, nebo děláme hodně změn najednou, které by bylo obtížné kontrolovat manuálně. Definovat, co je dobré kontrolovat automatizovaně a co manuálně, je velmi složité, protože nástroj na testování nedokáže reagovat na změny tak pružně jako tester.

Proto je možné automatizované testování použít v podstatě pouze u neměnných částí aplikace. Jde tedy o kontroly, zda například integrace nového modulu nezpůsobila nějaké závratné porušení funkčnosti aplikace, nebo jestli nejsou zasaženy části, které by vůbec neměly být změnami dotčeny. V tomto případě mluvíme o tzv. regresivních testech. Mimo ně můžeme využít automatizované testování i u tzv. komparačních testů. U nich se pracuje povětšinou se stejnou aplikací, ale v různých prostředích. Zkoumáme u nich, jestli je funkce stejná, nebo se instalací změnila.

Na co při testování pamatovat?
Při testování musíš myslet na to, že čím obyčejnější je aplikace, tím jednodušší je její testování. Pokud budeš chtít testovat aplikaci, která nemá jednoznačný kód, tedy není jednotná v názvech proměnných a struktuře objektů, celkem se nad ní zapotíš. Proto je dobré už při vývoji aplikace myslet na to, že jednodušší prvky ovládání a standardnější kód ti v budoucnu ulehčí práci i při její kontrole.

Ušetřím si tím opravdu čas?
Stejně jako u každé optimalizace je potřeba myslet na to, že nejprve musím něco investovat a teprve v budoucnu se mi to vrátí zpět. Většina managerů má dojem, že přeci musí automatizovaným testováním ušetřit spoustu lidských zdrojů. Není to tak úplně pravda. Nejprve se totiž optimalizace musí vyvinout a teprve potom je možné přesunout kapacity na jinou úlohu. Příprava nástrojů totiž obvykle vyžaduje mnohem více času než příprava manuálního testování, alespoň pokud to chce mít tester opravdu kvalitně nastavené. Navíc je k přípravě automatizace potřeba opravdu IT odborník, který má zkušenosti jak s analýzou testů, tak právě s automatizací testování.

Pokud tedy připravuji automatizaci, musím myslet na to, že mi to zabere poměrně dost času, kdy neprovádím testování, ale později se mi to vrátí. Zároveň ale musím počítat i s tím, že se v budoucnu může vyskytnout potřeba aplikaci změnit z hlediska funkcí (nikoliv jen dat), a v tom případě bude potřeba přípravu provést znovu. Proto je vhodné si nejprve udělat analýzu, zda se mi automatizované testování v mém případě opravdu vyplatí.

Pokud se chceš stát softwarovým testerem, přihlas se na konzultaci a dozvíš se více informací, jak na to!

Registration
NECHÁM SI PORADIT