Bevezetés az agilis tesztelésbe
A következő cikk, Mi az Agile Testing, részletes vázlatot tartalmaz az Agile Testing számára. A tesztelés kulcsfontosságú lépés a szoftverfejlesztési életciklusban (SDLC), és garantálja, hogy a szoftver összes funkciója és tulajdonságai az eredeti specifikációknak megfelelően működnek. A szoftver hiányosságai a tesztelés hiánya miatt potenciális veszteségeket okozhatnak az ügyfelek, a bevétel és a márkaérték az üzleti életben.
A tesztelés hagyományosan különálló szakasz az SDLC-ben, és a tesztelő csoport szokásos módon dolgozott, és csak a fejlesztés befejezésekor vesz részt. Ez késleltette a teljes folyamatot, és befolyásolta a szoftver szállításának minőségét. Az Agile Testing a hagyományos tesztelési módszertan kérdéseivel foglalkozik.
Az agilis tesztelés az agilis fejlesztés szerves része, amelyben a szoftvermegoldást fokozatosan, szakaszosan szállítják, ahelyett, hogy a végén egyetlen tételként csinálnák.
Különbség a hagyományos tesztelés és az agilis tesztelés között
A különbség a hagyományos tesztelés és az agilis tesztelés között
Hagyományos tesztelés (vízesés módszer) | Agilis tesztelés |
A tesztelés távol esik a fejlesztéstől, és a végén külön kell elvégezni. | A tesztelés a fejlesztéssel együtt történik, és a projektek rövidebb ciklusokban történő megvalósítása valósággá válik. |
A tesztelők önállóan dolgoznak, és soha nem keverednek a fejlesztőkkel. | A tesztelő csapat egy agilis alapcsoport része, és szorosan kapcsolatba lépnek a fejlesztői csapattal. |
A tesztelő tapasztalatait semmilyen fejlesztési tevékenységben nem használják fel. | A tesztelőket már a követelmény-rögzítési fázisból bevonják, és bemeneteiket szintén figyelembe veszik a gazdag felhasználói felület (UI) és a funkcionalitások kiépítésében. |
A haladás egy határozott tesztterv szerint történik. | A tesztterv rugalmas, hogy megfeleljen a követelmények változásainak. |
A tesztelés kizárólagos szakasza időt vesz igénybe, és így késleltetett kézbesítést eredményez. | Nincs késés, mivel a kódolás és a tesztelés együtt jár. |
A tesztelés teljes fontossága és összpontosítása nem látható. | Bekapcsolódtam a fejlesztési folyamatba és könyörtelenül gyakoroltam. |
A szállított szoftverben hibák is vannak. | A szoftver hibái hatékonyan ellenőrizve. |
Az agilis tesztelés módszertana
A teszt forgatókönyveit és a teszt eseteket előzetesen elkészítik, a Rendszer specifikáció dokumentumból, és a fejlesztői csapat ellenőrzik, és a tesztelés a fejlesztéssel együtt kezdődik. A teszttervet és a teszteseményeket minden növekményes szoftver kiadáshoz (Sprints) kidolgozták. A kódolás a teszteléssel együtt fokozatosan halad előre (sprintben).
Ezt a folyamatot addig ismétlik, amíg a stabilitás és a szükséges minőség el nem érkezik. Ezt követően a szoftver elindul a kísérleti, majd egy termelési környezetben.
Agilis tesztelési stratégiák
A változások bármilyen fejlesztési ciklus során történő rugalmas adaptálása miatt az agilis tesztelés inkább a stratégián alapul, nem pedig egy határozott teszteredményen és 4 fázisból áll,
1. A projekt kezdeményezése
Ez olyan kezdeti tevékenységeket foglal magában, mint például,
- Az üzleti ügy lezárása
- A projekt hatókörének meghatározása
- A csapat képzése a megfelelő képzettségű emberekkel
- A tesztelési eszközök és a módszertan azonosítása
- A kockázatcsökkentési terv kidolgozása
2. Sprint építés
- A tesztelő és a fejlesztői csapat közösen azonosítja a. az egyes sprintben elvégzendő tevékenységek, b. Minden sprint időtartama.
- Az egyes sprint eredményeit előre meghatározzák.
- Amíg a követelmény teljesül, a tesztelő csoport tesztelési forgatókönyveket és teszteseteket dolgoz ki.
- A célkitűzések széles körű elfogadásával elindul a sprint (növekményes szoftvermegoldás) építése és a fő lépések beépítése.
- A scrum master feladata a fejlesztés és a tesztelés megkönnyítése és figyelemmel kísérése.
- A kódok és a tesztelés egyidejű fejlesztése történik, és a talált hibákat ott-ott kijavítják.
- Megerősítő teszteket végeznek annak megállapítására, hogy az összes funkció megfelel-e a követelményeknek. A fejlesztők és a kulcsfontosságú felhasználók végzik ezeket a teszteket, és legtöbbjük automatizált, és a regressziós teszteket az egész életcikluson keresztül végzik.
- A vizsgálati teszt kiterjed az integráció tesztelésére, a terhelés tesztelésére és a biztonsági tesztekre.
3. Kiadások
A felhasználói elfogadási tesztelés befejezése után a növekményes szoftverkódot (Sprint) áthelyezik a termelésre. Ebben a szakaszban a tevékenységek magukban foglalják a végfelhasználói képzést, a kézfogást és a támogatást, a felhasználói kézikönyv elkészítését, a marketing és a hátsó tevékenységek operacionalizálását. Időszakos felülvizsgálati ülést kell tartani a teljesítményszint felmérése és a tanfolyam korrekciójának iteratív módon történő elvégzése érdekében.
4. Termelés
Az összes növekményes szoftver kiadás és az iterációs fejlesztések befejezése után a projekt átkerül a termelésbe, és a gyártás utáni támogatást a csapat biztosítja.
A szoftverben végrehajtott bármilyen változást a változáskezelő panel segítségével kezeljük, és a változtatásokat alaposan teszteljük a meghatározott funkciók szempontjából, és a teljes funkciók regressziós tesztelését elvégzzük, mielőtt azok végrehajtásra kerülnének.
Az agilis tesztelés 7 legfontosabb alapelve
Az alábbiakban bemutatjuk az agilis tesztelési alapelvek részleteit:
1. Folyamatos integráció / folyamatos kézbesítés (CI / CD)
A CI / CD a DevOps fontos pillére, és ragaszkodik a gyakori kódmozgásokhoz, szemben a hagyományos módszer periodikus kódmozgásával. A fejlesztésbe beépített agilis tesztelés megkönnyíti a CI / CD megvalósítását.
2. A projekt tesztelése
A folyamatos tesztelés visszacsatolása megszünteti az akadályt, és a projekt a tesztelés során megfigyelt hibák kijavítása után a következő szakaszba kerül. Az ügyfelek örülnének a hibamentes terméknek.
3. A tesztelés folyamatos
A tesztelés a kódolás kezdetének napjától kezdődik, és a tesztelők együtt dolgoznak a fejlesztőkkel a tesztelés elvégzésében ott-ott.
4. Üzleti agilitás
Az üzleti csapat mozgékonyá válik a fejlesztők / tesztelők agilis csoportjától kapott gyakori visszajelzésekkel a projekt előrehaladásáról.
5. Tesztelés mint legjobb gyakorlat
Egy agilis környezetben a tesztelésnek rendkívüli jelentőséget tulajdonítanak, és ezt követi a legjobb gyakorlatként a felhasználói élmény javítása és új ügyfelek felvétele érdekében.
6. A tesztelés magas fokú ismerete a cövektulajdonosok körében
Az agilis tesztelés a fejlesztési lánc mindenkit bevon a tesztelési folyamatba. A fejlesztők és tesztelők, üzleti felhasználók, ügyfelek mellett
7. Tesztvezérelt megközelítés
A tesztforgatókönyvek és a teszt esetek rendszer specifikációk alapján kerülnek kidolgozásra, a tesztelő csapat készen áll a startra a kódolás megkezdése előtt is. A tesztelés vezérli a fejlesztést egy agilis környezetben.
Az agilis tesztelés előnyei
- A hibamentes szoftvert a terveknek megfelelő időben szállítják, ami az ügyfelek örömére szolgál.
- Az egyidejű fejlesztés és tesztelés elkerüli a kommunikációs hiányosságokat és a félreértéseket, elkerülve ezzel az erőfeszítések, idő és pénz pazarlását.
- A várakozási idő, amíg az ügyfelek igénybe vehetik a szolgáltatásokat, csökken, mivel a szoftvert logikai növekményes egységként szállítják.
Következtetés
Az agilis tesztelés - az üzleti előnyök mellett - elősegíti a szoftvergyártókat, hogy a szoftverfejlesztési folyamat során magas színvonalú szabványokat érjenek el, és növekedjen az iparágban elért minősítésük. Ez azt is lehetővé teszi számukra, hogy gyorsan haladjanak a DevOps elveinek elfogadásában.
Ajánlott cikkek
Ez egy útmutató a Mi az Agile Testing elemhez? Itt tárgyaljuk a különbséget a hagyományos és az agilis tesztelés között, valamint a hét legfontosabb alapelvet és annak stratégiáit. A következő cikkeket is megnézheti további információkért -
- Az agilis Scrum tanúsítás fontossága
- Lépések a sikeres agilis irányításhoz
- Ki lehet a Scrum Mester?
- Agilis működés (alapelvek, előnyök)
- Mi a folyamatos integráció?
- Mi a teszt eset? | Hogyan írhatunk teszt esetet?