Úvod do agilního testování
Následující článek Co je agilní testování poskytuje podrobný přehled agilního testování. Testování je klíčovým krokem v životním cyklu vývoje softwaru (SDLC) a zaručuje, že všechny funkce a funkce softwaru fungují podle jeho původních specifikací. Závady v softwaru kvůli nedostatečnému testování by vedly k potenciální ztrátě zákazníků, výnosů a hodnoty značky pro firmu.
Tradičně je testování v SDLC odlišnou fází a testovací tým pracoval izolovaně a zapojí se až po dokončení vývoje. To zpozdilo celý proces a ovlivnilo kvalitu dodávek softwaru. Agilní testování řeší problémy tradiční metodiky testování.
Agilní testování je nedílnou součástí agilního vývoje, ve kterém je softwarové řešení dodáváno postupně ve fázích, namísto toho, aby bylo provedeno jako jedna šarže na konci.
Rozdíl mezi tradičním a agilním testováním
Rozdíl mezi tradičním a agilním testováním je,
Tradiční testování (metoda vodopádu) | Agilní testování |
Testování se odvíjí od vývoje, které se nakonec provádí samostatně. | Testování probíhá spolu s vývojem, čímž se realizace projektů v kratších cyklech stává skutečností. |
Testeři pracují nezávisle a nikdy se mísí s vývojáři. | Testovací tým je součástí agilního základního týmu a úzce se mísí s vývojovým týmem. |
Zkušenosti Testeru se nevyužívají v žádné vývojové činnosti. | Testery jsou zapojeny již od fáze sběru požadavků a jejich vstupy jsou také zohledněny při vytváření bohatého uživatelského rozhraní (UI) a funkčnosti. |
Postupuje podle pevného testovacího plánu. | Plán zkoušek je flexibilní, aby vyhověl změnám v požadavku. |
Exkluzivní fáze testování spotřebovává čas, a proto vede k opožděnému doručení. | Od kódování a testování nedochází k žádným prodlevám. |
Plná důležitost a zaměření pro testování nejsou viditelné. | Vstoupil do procesu vývoje a cvičil nemilosrdně. |
V dodávaném softwaru existuje možnost závad. | Poruchy v softwaru řízené efektivně. |
Metodika agilního testování
Testovací scénáře a testovací případy jsou připravovány předem, z dokumentu Specifikace systému a ověřeny vývojovým týmem a testování začíná spolu s vývojem. Testovací plán a testovací případy jsou vyvíjeny pro každé přírůstkové uvolnění softwaru (Sprints). Kódování spolu s testováním postupuje postupně (ve sprintech).
Tento proces se opakuje, dokud není dosaženo stability a požadované kvality. Následně je software spuštěn v pilotním a následně v produkčním prostředí.
Agilní strategie testování
Vzhledem k flexibilitě při přizpůsobování se změnám během jakéhokoli časového vývojového cyklu se Agilní testování spoléhá spíše na strategii než na pevný testovací plán a skládá se ze 4 fází,
1. Zahájení projektu
Zahrnuje počáteční činnosti, jako je například
- Dokončení obchodního případu
- Rozhodování o rozsahu projektu
- Vytváření týmu se správnými kvalifikovanými lidmi
- Identifikace testovacích nástrojů a metodiky
- Nakreslení plánu zmírnění rizika
2. Konstrukce sprintu
- Testovací tým a vývojový tým společně identifikují a. činnosti, které mají být dokončeny v každém sprintu, Doba trvání každého sprintu bude trvat.
- O výstupech v každém sprintu se rozhoduje předem.
- Zatímco požadavek je dokončen, testovací tým vyvíjí testovací scénáře a testovací případy.
- Se širokým přijetím cílů začíná stavba sprintu (inkrementální softwarové řešení) a hlavní kroky scrumu v roce.
- Role mistra Scrumu je usnadnit a sledovat vývoj a testování.
- Dochází k souběžnému vývoji kódů a testování a případné zjištěné závady jsou opraveny.
- Provedou se potvrzující zkoušky, aby se zjistilo, zda všechny funkce fungují podle požadavků. Vývojáři a klíčoví uživatelé provádějí tyto testy a většina z nich je automatizovaná a regresní testy se provádějí během celého životního cyklu.
- Vyšetřovací test zahrnuje testování integrace, testování zatížení a testování zabezpečení.
3. Vydání
Po dokončení testování přijatelnosti uživatele je inkrementální softwarový kód (Sprint) přesunut do výroby. Činnosti v této fázi zahrnují školení koncových uživatelů, manipulaci s nimi a podporu, přípravu uživatelské příručky, marketing a provozování činností koncových uživatelů. Měla by se konat periodická revizní schůzka za účelem posouzení úrovně výkonnosti a provedení korekce kurzu.
4. Výroba
Po dokončení všech přírůstkových verzí softwaru a opakujících se vylepšení projektu se projekt přesunul do výroby a postprodukční podporu poskytuje tým.
Veškeré změny provedené v softwaru jsou řízeny prostřednictvím ovládacího panelu změn a změny jsou důkladně testovány na specifické funkce a regresní testování je provedeno na celkové funkce před tím, než se implementuje.
7 hlavních principů agilního testování
Následuje seznam podrobných principů agilního testování:
1. Kontinuální integrace / kontinuální dodávka (CI / CD)
CI / CD jsou důležitými pilíři DevOps a trvají na častých pohybech kódu oproti periodickým pohybům kódu v konvenční metodě. Agilní testování dobře začleněné do vývoje usnadňuje implementaci CI / CD.
2. Testování pohání projekt
Zpětná vazba poskytovaná průběžným testováním odstraní překážku a projekt se přesune do další fáze po odstranění závad pozorovaných během testování. S konečným produktem bez vad by zákazníci byli spokojeni.
3. Testování je nepřetržité
Testování začíná ode dne, kdy začíná kódování a testeři pracují s vývojáři na dokončení testování tam a tam.
4. Obchodní obratnost
Obchodní tým se také stává agilním díky časté zpětné vazbě od agilního týmu vývojářů / testerů o postupu projektu.
5. Testování jako nejlepší praxe
V agilním prostředí je testování přikládáno nanejvýš důležité a je používáno jako nejlepší praxe pro zlepšení uživatelského dojmu a získání nových zákazníků.
6. Vysoké povědomí o testování mezi držiteli podílů
Agilní testování zapojuje všechny do vývojového řetězce do procesu testování. Kromě vývojářů a testerů, firemních uživatelů, zákazníků
7. Testem řízený přístup
Testovací scénáře a testovací případy jsou vyvíjeny pomocí systémových specifikací, testovací tým je připraven ke spuštění ještě před zahájením kódování. Testování řídí vývoj v agilním prostředí.
Výhody agilního testování
- Bezchybný software je dodáván včas, podle plánu, což vede k potěšení zákazníka.
- Souběžný vývoj a testování zabraňuje mezerám v komunikaci a nedorozumění, čímž zabraňuje plýtvání úsilím, časem a penězi.
- Čekací doba, než zákazníci využijí služby, se zkracuje, protože software je dodáván jako logické inkrementální jednotky.
Závěr
Agilní testování, kromě výhod pro podnikání, pomáhá prodejcům softwaru dosáhnout vysoce kvalitních standardů v procesu vývoje softwaru a zvýšit jejich hodnocení ve svém oboru. Také jim umožňuje rychle postupovat vpřed při přijímání principů DevOps.
Doporučené články
Toto je průvodce po Co je agilní testování? Zde diskutujeme rozdíl mezi tradičním a agilním testováním spolu s top 7 zásadami a jejich strategiemi. Další informace naleznete také v následujících článcích
- Význam certifikace Agile Scrum
- Kroky pro úspěšné agilní standup
- Kdo může být mistrem Scrumu?
- Agilní práce (principy, výhody)
- Co je kontinuální integrace?
- Co je to Test Case? | Jak napsat testovací případ?