Úvod do agilního testování
Agilní testování je proces testování softwaru. Z toho vyplývá princip vývoje agilního softwaru. Jedná se o propojenou metodiku vývoje, protože vývojové a testovací činnosti zde probíhají paralelně. Vývoj je v souladu s měnícími se požadavky zákazníků.
Agilní testování je nepřetržitý proces. Do toho jsou zapojeni všichni členové projektu. Testování není samostatná fáze, spíše se provádí společně s kódováním, výsledkem je, že konečný produkt je vysoce kvalitní a splňuje požadavky zákazníka. Testování začíná na začátku projektu a existuje spojitost mezi testováním a vývojem.
Hlavním cílem agilního týmu je dosáhnout kvality. Časové rámce agilního testování jsou krátké (1 až 4 týdny) a pojmenované Iterace. Testování se provádí souběžně s vývojem iteračního modelu.
Principy agilního testování
1. Nepřetržité: Poskytuje zpětnou vazbu průběžně, průběžně, takže výrobky splňují potřeby podnikání.
2. Týmová práce: V jiném softwaru je testovací tým zodpovědný za testování, ale v agilním testování jsou spolu s testovacím týmem do testování rovnoměrně zapojeni vývojáři a obchodní analytici.
3. Doba odezvy zpětné vazby: Protože obchodní tým je zapojen do agilního testování, zpětná vazba je rychlá a nepřetržitá, takže doba odezvy zpětné vazby je velmi krátká.
4. Čistý a zjednodušený kód: Vady zjištěné agilním týmem jsou opraveny v rámci stejné iterace, takže kód je udržován čistý a zjednodušený.
5. Závazkové testy: Zde se testování provádí v době implementace, zatímco v jiných procesech se testování provádí po implementaci.
6. Lehké dokumenty: Agilní testeři používají opakovaně použitelné kontrolní seznamy k rozhodování o testech, které mají být provedeny. Dokumenty lze použít k několika účelům a použité nástroje jsou také lehké.
7. Test řízený vývoj: Zde je vývoj poháněn testováním. Testovací případy jsou psány podle požadavků, takže tento přístup se nazývá Test Driven Development (TDD). V softwaru pro testování vodopádu se testování provádí v poslední fázi.
Hodnoty agilního testování
- Jednotlivci a komunikace jsou vybíráni na základě přísného procesu a nástrojů. Postupy a nástroje nejsou při agilním testování opomíjeny, místo toho jsou postaveny na rozumných, silných procesech a nástrojích a tyto nástroje jsou také využívány. Pravidlo je, že testeři řídí nástroje a výstup závisí na testerech a ne naopak.
- Volba provedená v agilním testování je funkční a použitelný software na základě nepoužitelné a komplexní dokumentace. Hlavním cílem je spíše samotné testování než zpracování dokumentů, jejichž jediným cílem je směřovat k cíli. Dokumenty jsou rozhodně přítomny, pokud se člen rozhodne odejít.
- Účast zákazníků je zde tajemstvím. Klient je vždy zapojen a je v kontaktu s průběhem projektu. To znamená, že klient musí mít pravidelné schůzky v průběhu projektu, nikoli aby byl projekt doručen přímo po jeho dokončení. To je jistě práce navíc, ale rozhodně je lepší než pracovat špatným směrem.
Všechny požadované změny jsou přijaty a implementovány. Přestože projekt sleduje plán, lze jej snadno změnit vždy, když se situace změní. Člověk tedy nemusí čekat na konec, aby se dozvěděl o změněném scénáři a nechal projekt zamítnout kvůli změněnému požadavku.
Agilní metody testování
Existují různé agilní testovací metody jako:
1. Vývoj řízený chováním (BDD).
Vývojem řízený vývoj zlepšuje komunikaci, takže všichni členové rozumí každé funkci před zahájením procesu. Vývojáři, analytici a testeři neustále komunikují.
2. Akceptační testem řízený vývoj (ATDD).
Hlavním cílem je zapojení všech členů týmu, tj. Zákazníka, testera a vývojáře, protože všichni tři mají různé perspektivy. Zákazník se zaměřuje na problém, který má být vyřešen, vývojář se zaměřuje na to, jak bude vyřešen, a cílem testera je zjistit, co by se mohlo pokazit. Tyto testy se nazývají akceptační testy, v nichž jsou zahrnuty perspektivy všech tří, které popisují, jak bude systém fungovat.
3. Průzkumné testování.
V takovém testování jdou design testu a jeho provedení ruku v ruce. Důraz je kladen na pracovní software nad dokumentací. Jednotlivci a komunikace jsou důležitější než proces a nástroje. Průzkumné testy jsou lépe přizpůsobitelné změnám. Plány zkoušek jsou navrženy a provedeny podle zjištění testerů.
Testovací plán
V agilním testování je testovací plán psán a aktualizován pokaždé. To zahrnuje:
- Rozsah testování
- Nové funkcionality, které se testují
- Úroveň nebo typy testování
- Testování výkonu a zatížení
- S ohledem na infrastrukturu
- Pomocný plán
- Plánování zdrojů
- Výstupy a milníky
Fáze agilního testování životního cyklu
Existuje pět fází Agilního životního cyklu testování
- Posouzení dopadů, které znamená shromažďování vstupů od zúčastněných stran a uživatelů, které budou působit jako zpětná vazba pro další vývojový cyklus.
- Agilní plánování testů, kde se všechny zúčastněné strany sejdou, aby naplánovaly proces testování, schůzky a výstupy.
- Připravte se na uvolnění, což je fáze, kdy je rozhodnuto, zda jsou vyvíjené funkce připraveny k uvedení do provozu nebo ne.
- Denní scrumy, které zahrnují každodenní ranní setkání, aby dohnaly stav testování a stanovily cíle pro daný den.
- Posouzení agility, kde se konají týdenní kontrolní schůzky se zúčastněnými stranami, aby se ověřil pokrok.
Výhody agilního testování
Agilní testování má své vlastní výhody. Jedná se o software šetřící čas i peníze, protože snižuje dokumentaci a je velmi flexibilní a přizpůsobivý neustálým změnám v podnikání. Pravidelná zpětná vazba je získávána od skutečného použití, takže když dosáhne konečné fáze, existuje nejmenší možnost, že uživatel nebude o procesu vědět.
Agilní testování je dokonalý software pro včasnou detekci defektů a protože problémy jsou vyřešeny brzy, snižují se také náklady na opravu. Konečný produkt je zaměřen na zákazníka a má vysokou kvalitu. Díky neustálé komunikaci mezi týmy je agilní testování úspěšné.
Doporučené články
Toto byl průvodce agilním testováním. Zde jsme diskutovali o koncepcích, fázích, výhodách, plánu testování, metodách, principech a hodnotách agilního testování. Další informace naleznete také v dalších navrhovaných článcích -
- Co je ETL testování?
- Co je agilní programování?
- Co je Agilní Sprint?
- Rozhovor s Agile Coach Interview