Mi az a regressziós teszt?
A regressziós tesztelés egy fekete doboz tesztelési technikák. A szoftverben végrehajtott kódmódosítás hitelesítésére szolgál, nem befolyásolja a termék meglévő funkcionalitását. A regressziós tesztelés biztosítja, hogy a termék megfelelően működjön az új funkciókkal, a hibajavításokkal vagy a meglévő funkció bármely módosításával.
A regressziós tesztelés egyfajta szoftver tesztelés . A tesztesetek újrafuttatása megtörténik annak ellenőrzésére, hogy az alkalmazás korábbi funkciói megfelelően működnek-e, és az új változtatások nem okoztak hibát.
A regressziós tesztelés akkor hajtható végre egy új builden, ha az eredeti funkcionalitásban jelentős változás történik. Gondoskodik arról, hogy a kód akkor is működjön, ha változások történnek. A regresszió azt jelenti, hogy tesztelje újra az alkalmazás azon részeit, amelyek változatlanok.
A regressziós teszteket verifikációs módszernek is nevezik. A tesztesetek gyakran automatizáltak. A teszteseteket sokszor kell végrehajtani, és ugyanazt a tesztesetet manuálisan újra és újra futtatni, időigényes és fárasztó is.
Példa a regressziós tesztelésre
Itt egy esetet veszünk figyelembe a regressziós tesztelés hatékony meghatározásához:
Tekintsünk egy Y terméket, amelynek egyik funkciója a megerősítés, az elfogadás és az e-mailek elküldése. Azt is tesztelni kell, hogy a kód változása nem érintette őket. A visszafejlődő tesztelés nem függ semmilyen programozási nyelvtől, például Jáva , C++ , C# stb. Ezzel a módszerrel tesztelhető a termék módosítása vagy frissítése. Biztosítja, hogy a termékben bekövetkezett bármilyen változás ne legyen hatással a termék meglévő moduljára. Ellenőrizze, hogy a javított hibák és az újonnan hozzáadott szolgáltatások nem okoztak-e problémát a Szoftver előző működő verziójában.
Mikor végezhetünk regressziós tesztet?
Regressziós tesztelést végzünk minden alkalommal, amikor a termelési kódot módosítják.
A regressziós tesztelést a következő forgatókönyv szerint végezhetjük el:
1. Amikor új funkciókat adnak hozzá az alkalmazáshoz.
Példa:
A webhelyek bejelentkezési funkcióval rendelkeznek, amely lehetővé teszi a felhasználók számára, hogy csak e-maillel jelentkezzenek be. Most egy új funkciót biztosítunk a Facebookon keresztüli bejelentkezéshez.
2. Ha van változási követelmény.
Példa:
Emlékezzen a bejelentkezési oldalról eltávolított jelszóra, amely korábban érvényes volt.
3. Amikor a hiba javításra került
Példa:
Tételezzük fel, hogy a bejelentkezési gomb nem működik a bejelentkezési oldalon, és egy tesztelő hibát jelent, amely szerint a bejelentkezési gomb meghibásodott. Miután a hibát kijavították a fejlesztők, a tesztelő teszteli, hogy megbizonyosodjon arról, hogy a bejelentkezési gomb a várt eredménynek megfelelően működik. Ezzel egyidejűleg a tesztelő más funkciókat is tesztel, amelyek a bejelentkezési gombhoz kapcsolódnak.
4. Ha teljesítményprobléma van javítva
Példa:
A kezdőlap betöltése 5 másodpercet vesz igénybe, így a betöltési idő 2 másodpercre csökken.
5. Amikor környezetváltozás történik
Példa:
Amikor frissítjük az adatbázist MySql-ről Oracle-re.
Hogyan végezzünk regressziós tesztet?
A regressziós tesztelésre akkor van szükség, ha a szoftverkarbantartás magában foglalja a meglévő funkciók javítását, hibajavítását, optimalizálását és törlését. Ezek a módosítások hatással lehetnek a rendszer működésére. Ebben az esetben regressziós teszt szükséges.
A regressziós vizsgálat a következő technikákkal végezhető el:
1. Tesztelje újra az összeset:
Az újratesztelés a regressziós tesztelés egyik módja. Ebben a megközelítésben az összes tesztesetet újra végre kell hajtani. Itt definiálhatjuk az újratesztelést, amikor a teszt sikertelen, és meghatározhatjuk, hogy a hiba oka szoftverhiba. A hiba bejelentése megtörtént, a szoftver új verziójára számíthatunk, amelyben a hiba javítva van. Ebben az esetben újra el kell végeznünk a tesztet, hogy megbizonyosodjunk arról, hogy a hiba megszűnt. Ezt újratesztelésnek nevezik. Egyesek ezt megerősítő tesztnek nevezik.
Az újbóli teszt nagyon költséges, mivel óriási időt és erőforrást igényel.
2. Regressziós teszt kiválasztása:
- Ennél a technikánál egy kiválasztott teszteset hajt végre, nem pedig egy teljes tesztesetet.
- A kiválasztott teszteset két esetre osztható
- Újrahasználható teszttokok.
- Elavult tesztesetek.
- Az újrafelhasználható tesztesetek felhasználhatók a következő regressziós ciklusban.
- Az elavult tesztesetek nem használhatók a következő regressziós ciklusban.
3. Tesztesetek rangsorolása:
A teszteset prioritása az üzleti hatás, a kritikus és gyakran használt funkciók függvényében. A tesztesetek kiválasztása csökkenti a regressziós tesztkészletet.
Mik azok a regressziós tesztelő eszközök?
A regressziós tesztelés a minőségbiztosítási folyamat létfontosságú része; a regresszió végrehajtása során az alábbi kihívásokkal nézhetünk szembe:
A regressziós tesztelés sok időt vesz igénybe. A regressziós tesztelés ismét a meglévő teszteket foglalja magában, így a tesztelőket nem izgatja a teszt újbóli futtatása.
A regressziós tesztelés akkor is összetett, ha bármilyen termék frissítésére van szükség; a tesztek listája is bővül.
A regressziós tesztelés biztosítja, hogy a meglévő termékfunkciók továbbra is működőképesek legyenek. A regressziós teszteléssel kapcsolatos kommunikáció egy nem műszaki vezetővel nehéz feladat lehet. A vezető szeretné látni a termék előrehaladását, és jelentős időt fektetni a regressziós tesztelésre, hogy a meglévő funkcionalitás nehezen működjön.
Regressziós tesztelési folyamat
A regressziós tesztelési folyamat az egész épít és a kiadja .
Regressziós tesztelés az építmények között
Amikor a hiba kijavított, újra teszteljük a hibát, és ha van függő modul, akkor regressziós tesztet végzünk.
Például , Hogyan végezzük el a regressziós tesztelést, ha különböző felépítéseink vannak, mint Build 1, Build 2 és Build 3 , amelyek különböző forgatókönyvekkel rendelkeznek.
Build1
- Először az ügyfél biztosítja az üzleti igényeket.
- Ezután a fejlesztőcsapat elkezdi a funkciók fejlesztését.
- Ezt követően a tesztelő csapat elkezdi írni a teszteseteket; például 900 tesztesetet írnak a termék 1. kiadásához.
- Ezután megkezdik a tesztesetek megvalósítását.
- A termék kiadása után az ügyfél egy átvételi tesztet hajt végre.
- És a végén a termék átkerül az éles szerverre.
Build2
- Most 3-4 extra (új) funkciót kér az ügyfél, és megadja az új funkciók követelményeit is.
- A fejlesztőcsapat új funkciók fejlesztésébe kezd.
- Ezt követően a tesztelő csapat elkezdi írni az új funkciók tesztesetjét, és körülbelül 150 új tesztesetet írnak. Ezért a megírt tesztesetek száma összesen 1050 mindkét kiadás esetében.
- A tesztelőcsapat most megkezdi az új funkciók tesztelését 150 új tesztesettel.
- Amint ez megtörtént, megkezdik a régi funkciók tesztelését 900 teszteset segítségével, hogy megbizonyosodjanak arról, hogy az új funkció hozzáadása károsította-e a régi funkciókat vagy sem.
- Itt a régi funkciók tesztelése ún Regressziós teszt .
- Az összes funkció (új és régi) tesztelése után a termék átadásra kerül a vásárlónak, majd a vásárló elvégzi az átvételi tesztet.
- Az elfogadási teszt elvégzése után a termék átkerül az éles szerverre.
Építés3
- A második kiadás után az ügyfél el akarja távolítani az egyik szolgáltatást, például az értékesítést.
- Ezután törli az összes tesztesetet, amely az értékesítési modulhoz tartozik (kb. 120 teszteset).
- Ezután tesztelje a másik szolgáltatást annak ellenőrzésére, hogy az összes többi funkció megfelelően működik-e az értékesítési modul teszteseteinek eltávolítása után, és ez a folyamat a regressziós tesztelés alatt történik.
Jegyzet:
- A stabil funkciók tesztelése, hogy megbizonyosodjon arról, hogy a változtatások miatt tönkrement. Itt a változtatások azt jelentik, hogy a módosítás, kiegészítés, hibajavítás vagy törlés .
- Ugyanazon tesztesetek újbóli végrehajtása a különböző buildekben vagy kiadásokban annak biztosítására szolgál, hogy a változtatások (módosítás, kiegészítés, hibajavítás vagy törlés) ne okozzanak hibákat a stabil szolgáltatásokban.
Regressziós tesztelés az egész kiadásban
A regressziós tesztelési folyamat akkor kezdődik, amikor ugyanahhoz a projekthez új kiadás érkezik, mivel az új szolgáltatás hatással lehet a korábbi kiadások régi elemeire.
A regressziós tesztelési folyamat megértéséhez az alábbi lépéseket követjük:
1. lépés
Nincs regressziós teszt 1. kiadás mert az 1. kiadásban nem történik módosítás, mivel a kiadás maga is új.
2. lépés
A regressziós tesztelés fogalma innen indul ki 2. kiadás amikor az ügyfél ad valamennyit új követelmények .
3. lépés
Miután megszerezték az új követelményeket (módosító funkciók), ők (a fejlesztők és a tesztmérnökök) megértik az igényeket, mielőtt a hatástanulmány .
4. lépés
Az új követelmények megértése után egy kört végzünk hatástanulmány a nagy kockázat elkerülése érdekében, de itt felmerül a kérdés, hogy ki fogja elvégezni a hatáselemzést?
5. lépés
A hatáselemzést a vevő azok alapján üzleti ismeretek , a fejlesztő azok alapján kódolási ismeretek , és ami a legfontosabb, azt a teszt mérnök mert megvannak a termékismeret .
Megjegyzés: Ha egyetlen személy megteszi, előfordulhat, hogy nem fedi le az összes hatásterületet, ezért az összes személyt bevonjuk, hogy a maximális hatásterületet lefedhessük, és a hatáselemzést a kibocsátások korai szakaszában kell elvégezni.
6. lépés
Ha végeztünk a hatásterület , akkor a fejlesztő elkészíti a hatásterület (dokumentum) , és a vevő is elkészíti a hatásterület dokumentum hogy el tudjuk érni a hatáselemzés maximális lefedettsége .
7. lépés
A hatáselemzés elvégzése után a fejlesztő, az ügyfél és a tesztmérnök elküldi a Jelentések# a hatásterület dokumentumainak a Tesztvezeték . Közben pedig a tesztmérnök és a fejlesztő az új teszteseten dolgozik.
8. lépés
Amint a Tesztvezető megkapja a Jelentések#-et, megkapja konszolidálni a jelentéseket és tárolja a teszteset követelménytár az 1. kiadáshoz.
Megjegyzés: Teszteset-tár: Itt elmentjük a kiadások összes tesztesetét.
9. lépés
Ezt követően a tesztvezető igénybe veszi az RTM segítségét és kiválasztja a szükségeset regressziós teszt eset tól teszteset-tár , és ezek a fájlok a Regression Test Suite .
Jegyzet:
- A tesztvezeték eltárolja a regressziós tesztesetet a regressziós tesztkészletben a további zavarok elkerülése érdekében.
10. lépés
Ezt követően, amikor a tesztmérnök végzett az új tesztesetekkel, a tesztvezeték megteszi rendelje hozzá a regressziós tesztesetet a tesztmérnöknek.
11. lépés
Amikor az összes regressziós teszt eset és az új funkciók stabil és passz , majd ellenőrizze a hatásterületet a teszteset segítségével amíg a régi funkciókra, plusz az új funkciókra tartós lesz, majd átadják az ügyfélnek.
A regressziós tesztelés típusai
A regressziós tesztelés különböző típusai a következők:
- Egységregressziós tesztelés [URT]
- Regionális regressziós tesztelés[RRT]
- Teljes vagy teljes regressziós tesztelés [FRT]
1) Egységregressziós tesztelés [URT]
Ebben csak a megváltozott egységet fogjuk tesztelni, az ütközési területet nem, mert az ugyanannak a modulnak a komponenseit érintheti.
Példa1
Az alábbi alkalmazásban és az első buildben a fejlesztő fejleszti a Keresés gombra, amely elfogadja 1-15 karakter . Ezután a tesztmérnök a Keresés gomb segítségével teszteli a teszteset tervezési technika .
Most az ügyfél némileg módosítja a követelményt, és azt is kéri, hogy a Keresés gomb el tudja fogadni a 1-35 karakter . A tesztmérnök csak a Keresés gombot teszteli annak ellenőrzésére, hogy az 1-35 karakterből áll-e, és nem ellenőrzi az első build további jellemzőit.
Példa2
Itt van Build B001 , és a hiba azonosításra kerül, és a jelentést kézbesítik a fejlesztőnek. A fejlesztő kijavítja a hibát, és elküldi néhány új funkcióval együtt, amelyeket a másodikban fejlesztettek ki Build B002 . Ezt követően a tesztmérnök csak a hiba kijavítása után végez vizsgálatot.
- A tesztelő mérnök azonosítja, hogy kattintson a gombra Beküldés gomb az üres oldalra lép.
- És ez egy hiba, és elküldik a fejlesztőnek, hogy javítsák ki.
- Amikor az új build a hibajavításokkal együtt érkezik, a tesztmérnök csak a Küldés gombot teszteli.
- És itt nem fogjuk ellenőrizni az első build többi funkcióját, és nem próbáljuk meg tesztelni a második buildben elküldött új funkciókat.
- Biztosak vagyunk benne, hogy javítjuk a Beküldés gomb nem lesz hatással a többi funkcióra, ezért csak a javított hibát teszteljük.
Ezért azt mondhatjuk, hogy teszteléssel csak a megváltozott szolgáltatást nevezzük a Egységregressziós tesztelés .
2) Regionális regressziós tesztelés [RRT]
Ebben teszteljük a módosítást a hatásterülettel vagy régiókkal, az úgynevezett Regionális regressziós tesztelés . Itt a hatásterületet teszteljük, mert ha vannak megbízható modulok, az a többi modulra is hatással lesz.
Például:
Az alábbi képen amint látjuk, hogy négy különböző modulunk van, mint pl Az A modul, a B modul, a C modul és a D modul , amelyeket a fejlesztők biztosítanak a teszteléshez az első build során. Most a tesztmérnök azonosítja a hibákat D modul . A hibajelentést elküldik a fejlesztőknek, a fejlesztőcsapat pedig kijavítja ezeket a hibákat, és elküldi a második buildet.
A második összeállításban a korábbi hibákat javítják. A tesztmérnök most már megérti, hogy a D modul hibajavítása hatással volt néhány funkcióra Az A modul és a C modul . Ezért a tesztmérnök először a D modult teszteli, ahol a hibát kijavították, majd ellenőrzi az ütközési területeket. Az A modul és a C modul . Ezért ez a teszt az úgynevezett Regionális regressziós tesztelés.
A regionális regressziós tesztelés során az alábbi problémával találkozhatunk:
Probléma:
Az első buildben a kliens elküld néhány módosítást, és új funkciókat is szeretne hozzáadni a termékhez. Az igényeket mindkét csapatnak elküldik, azaz fejlesztésre és tesztelésre.
A követelmények beszerzése után a fejlesztőcsapat megkezdi a módosítást, és az igények alapján fejleszti az új funkciókat is.
Most a tesztvezető e-mailt küld az ügyfeleknek, és megkérdezi őket, hogy a szükséges módosítások elvégzése után az összes hatásterület érintett lesz. Így a vásárlónak fogalma lesz arról, hogy mely funkciókat kell újra tesztelni. Ezenkívül e-mailt küld a fejlesztőcsapatnak, hogy megtudja, az alkalmazás mely területeit érintik a változások és az új funkciókkal való kiegészítések.
Hasonlóképpen, az ügyfél e-mailt küld a tesztelő csapatnak a hatásterületek listájáért. Ezért a tesztelő vezető begyűjti a hatáslistát az ügyféltől, a fejlesztői csapattól és a tesztelő csapattól is.
Ez Hatáslista elküldik az összes tesztmérnöknek, aki megnézi a listát és ellenőrzi, hogy a jellemzőik módosultak-e, és ha igen, akkor regionális regressziós tesztelés . A hatásterületeket és a módosított területeket a megfelelő mérnökök tesztelik. Minden tesztmérnök csak azokat a jellemzőit teszteli, amelyekre a módosítás hatással lehetett.
A probléma ezzel a fenti megközelítéssel az, hogy a tesztvezető nem kapja meg a hatásterületek teljes képét, mivel a fejlesztőcsapatnak és a kliensnek nincs sok ideje a leveleinek visszaküldésére.
Megoldás
A fenti probléma megoldásához az alábbi eljárást követjük:
Amikor egy új build érkezik a legújabb funkciókkal és hibajavításokkal, a tesztelő csapat megbeszéli a találkozót, ahol megbeszélik, hogy a szolgáltatásaik hatással vannak-e a fenti módosításra. Ezért megtesznek egy kört Hatástanulmány és generálja a Hatáslista . Ebben a listában a tesztmérnök igyekszik a maximálisan valószínű ütési területeket bezárni, ami szintén csökkenti a hibák előfordulásának esélyét.
Amikor új build érkezik, a tesztelő csapat az alábbi eljárást követi:
- Füstvizsgálatot végeznek az alkalmazás alapvető funkcióinak ellenőrzésére.
- Ezután tesztelik az új funkciókat.
- Ezt követően ellenőrzik a megváltozott funkciókat.
- Miután végeztek a megváltozott funkciók ellenőrzésével, a tesztmérnök újra teszteli a hibákat.
- Ezután ellenőrizni fogják a hatásterületet a regionális regressziós teszt elvégzésével.
Az egység és a regionális regressziós tesztelés alkalmazásának hátránya
Az alábbiakban felsorolunk néhány hátrányt az egység és a regionális regressziós tesztelés használatának:
- Lehet, hogy kihagyunk néhány hatásterületet.
- Lehetséges, hogy rossz hatásterületet azonosítunk.
Megjegyzés: Azt mondhatjuk, hogy a regionális regressziós teszteléssel kapcsolatos főbb munka eredményeként több hibát kapunk. De ha ugyanilyen elkötelezettséggel dolgozunk a teljes regressziós tesztelésen, kevesebb hibát fogunk kapni. Ezért itt megállapíthatjuk, hogy a tesztelési erőfeszítés javítása nem segít abban, hogy több hibát kapjunk.
3) Teljes regressziós tesztelés [FRT]
A termék második és harmadik kiadása során a kliens 3-4 új funkció hozzáadását kéri, illetve az előző kiadáshoz képest néhány hibát is ki kell javítani. Ezután a tesztelő csapat elvégzi a hatáselemzést, és megállapítja, hogy a fenti módosítás eredményeképpen a teljes terméket teszteljük.
Ezért azt mondhatjuk, hogy tesztelve a módosított jellemzők és az összes megmaradt (régi) funkciót az úgynevezett Teljes regressziós tesztelés .
Mikor végzünk teljes regressziós tesztet?
Az FRT-t akkor hajtjuk végre, ha a következő feltételek fennállnak:
- Amikor a módosítás a termék forrásfájljában történik. Például , a JVM a JAVA alkalmazás gyökérfájlja, és ha bármilyen változás történik a JVM-ben, akkor a teljes JAVA programot teszteljük.
- Amikor n számú változtatást kell végrehajtanunk.
Jegyzet:
A regionális regressziós tesztelés a regressziós tesztelés ideális megközelítése, de a probléma az, hogy a regionális regressziós tesztelés során sok hibát kihagyhatunk.
És itt meg fogjuk oldani ezt a problémát a következő megközelítés segítségével:
- Amikor a kérelmet benyújtják a tesztelésre, a tesztelő mérnök teszteli az első 10-14 ciklust, és elvégzi a RRT .
- Ezután a 15. ciklusra FRT-t csinálunk. És ismét, a következő 10-15 ciklusban ezt csináljuk Regionális regressziós tesztelés , a 31. ciklusra pedig a teljes regressziós tesztelés , és így folytatjuk.
- De a megjelenés utolsó tíz ciklusában csak fellépünk teljes regressziós tesztelés .
Ezért, ha követjük a fenti megközelítést, több hibát kaphatunk.
Az ismételt manuális regressziós tesztelés hátránya:
- A termelékenység csökkenni fog.
- Ez nehéz feladat.
- A teszt végrehajtásában nincs következetesség.
- És a teszt végrehajtási ideje is megnő.
Ezért az automatizálásra fogunk törekedni, hogy túllépjünk ezeken a problémákon; amikor megvan a regressziós tesztciklus n-száma, akkor a automatizálási regressziós tesztelési folyamat .
Automatizált regressziós tesztelési folyamat
Általában akkor választjuk az automatizálást, amikor több kiadás vagy több regressziós ciklus van, vagy ismétlődő feladat van.
Az automatizálási regressziós tesztelési folyamat a következő lépésekben hajtható végre:
Megjegyzés1:
Az alkalmazás tesztelésének folyamatát bizonyos eszközök használatával automatizálási tesztelésnek nevezik.
Tegyük fel, hogy ha egy mintapéldát veszünk a Bejelentkezési modul , akkor hogyan végezhetjük el a regressziós vizsgálatot.
Itt a bejelentkezés kétféleképpen történhet, amelyek a következők:
Manuálisan: Ebben csak egyszer és kétszer fogunk regressziót végrehajtani.
Automatizálás: Ebben többször is elvégezzük az automatizálást, mivel meg kell írnunk a tesztszkripteket és el kell végeznünk a végrehajtást.
2. megjegyzés: Valós időben, ha olyan problémákkal szembesültünk, mint például:
| Problémák | Kezelje |
|---|---|
| Új funkciók | Kézi tesztmérnök |
| A tesztelési funkciók visszafejlődése | Automatizálási tesztmérnök |
| Fennmaradó ( 110 funkció + 1. kiadás) | Kézi tesztmérnök |
1. lépés
Amikor az új kiadás elindul, nem megyünk az automatizálásra, mert nincs fogalma a regressziós tesztelésről és a regressziós tesztesetről, ahogy ezt a fenti folyamatban megértettük.
2. lépés
Amikor az új kiadás és a fejlesztés elindul, két csapatunk van, azaz a manuális csapat és az automatizálási csapat.
3. lépés
A kézi csapat átmegy a követelményeken, azonosítja a hatásterületet és átadja a követelmény tesztcsomag az automatizálási csapatnak.
4. lépés
Most a manuális csapat elkezd dolgozni az új funkciókon, az automatizálási csapat pedig elkezdi fejleszteni a tesztszkriptet, és megkezdi a teszteset automatizálását is, ami azt jelenti, hogy a regressziós tesztesetek a tesztszkriptekké lesznek konvertálva.
5. lépés
Mielőtt ők (az automatizálási csapat) megkezdenék a teszteset automatizálását, azt is elemzik, hogy melyik eset automatizálható vagy nem.
6. lépés
Az elemzés alapján elindítják az automatizálást, azaz minden regressziós tesztesetet tesztszkriptbe konvertálnak.
7. lépés
A folyamat során segítséget kérnek a Regressziós esetek mert nem rendelkeznek olyan megfelelő termékismerettel, mint a eszköz és a Alkalmazás .
8. lépés
Amint a tesztszkript készen áll, megkezdik ezeknek a szkripteknek a végrehajtását az új alkalmazáson [régi szolgáltatás]. Mivel a tesztszkriptet a regressziós jellemző vagy a régi jellemző segítségével írják.
9. lépés
A végrehajtás befejezése után egy másik állapotot kapunk, mint például Megfelelt/nem sikerült .
10. lépés
Ha az állapot sikertelen, ami azt jelenti, hogy manuálisan újra meg kell erősíteni, és ha a hiba létezik, akkor jelentést küld az érintett fejlesztőnek. Amikor a fejlesztő kijavítja a hibát, a hibát az Impact területtel együtt újra kell tesztelnie a manuális tesztmérnöknek, és a szkriptet is újra kell futtatnia az automatizálási tesztmérnöknek.
11. lépés
Ez a folyamat addig tart, amíg az összes új szolgáltatást és a regressziós jellemzőt át nem adják.
Az automatizálási teszteléssel végzett regressziós tesztelés előnyei:
- A tesztszkriptet több kiadásban is fel lehet használni.
- Annak ellenére, hogy a regressziós tesztesetek száma növeli a kiadást kiadásonként, és nem kell növelnünk az automatizálási erőforrást, mivel néhány regressziós eset már automatizált az előző kiadásból.
- Ez egy időtakarékos folyamat mert a végrehajtás mindig gyorsabb, mint a kézi módszer.
Hogyan válasszunk ki teszteseteket regressziós teszteléshez?
Ipari vizsgálatból kiderült. Az ügyfél által jelentett több hiba az utolsó pillanatban elvégzett hibajavításoknak köszönhető. Ezek a mellékhatások létrehozása, és így a teszteset kiválasztása a regressziós teszteléshez művészet, nem könnyű feladat.
A regressziós teszt a következőképpen végezhető el:
- Teszteset, melyben gyakori hibák
- A felhasználók számára jobban látható funkciók.
- A tesztesetek igazolják a termék alapvető tulajdonságait.
- Minden integrációs teszteset
- Minden összetett teszteset
- Határérték tesztesetek
- Példa a sikeres tesztesetekből
- A tesztesetek sikertelensége
Regressziós tesztelési eszközök
Ha a szoftver gyakran változik, a regressziós tesztelés költségei is növekednek. Ilyen esetekben a tesztesetek kézi végrehajtása növeli a tesztvégrehajtási időt és a költségeket. Ebben az esetben az automatizálási tesztelés a legjobb választás. Az automatizálás időtartama attól függ, hogy hány teszteset marad újra felhasználható az egymást követő regressziós ciklusokhoz.
A regressziós teszteléshez használt alapvető eszközök a következők:
Szelén
A szelén egy nyílt forráskódú eszköz. Ez az eszköz egy webalkalmazás automatizált tesztelésére szolgál. Böngésző alapú regressziós teszteléshez szelént használtunk. Szelén, amelyet webalapú alkalmazások felhasználói felületi regressziós tesztjéhez használnak.
Ranorex Stúdió
Minden egyben regressziós teszt automatizálás asztali, webes és mobilalkalmazásokhoz beépített Selenium webillesztőprogrammal. A Ranorex Studio teljes IDE plusz eszközöket tartalmaz a kód nélküli automatizáláshoz.
Quick Test Professional (QTP)
A QTP egy automatizált tesztelőeszköz, amelyet regressziós és funkcionális teszteléshez használnak. Ez egy adatközpontú, kulcsszó alapú eszköz. VBScript nyelvet használt az automatizáláshoz. Ha megnyitjuk a QTP eszközt, azt a három gombot látjuk, amelyek Felvétel, lejátszás és leállítás . Ezek a gombok segítenek rögzíteni minden kattintást és a számítógépes rendszeren végrehajtott műveletet. Rögzíti a műveleteket és lejátssza.
Rational Functional Tester (RTF)
A Rational Function Tester egy Java-eszköz, amelyet szoftveralkalmazások teszteseteinek automatizálására használnak. Az RTF a regressziós tesztesetek automatizálására szolgál, és integrálódik a racionális funkcionális teszterrel is.
A regressziós és automatizálási tesztelési eszközökkel kapcsolatos további információkért tekintse meg az alábbi linket:
https://www.javatpoint.com/automation-testing-tool
Regressziós tesztelés és konfigurációkezelés
A regressziós tesztelésben a konfigurációkezelés elengedhetetlenné válik az Agilis környezetekben, ahol a kód folyamatosan módosul. A regressziós teszt érvényességének biztosításához a következő lépéseket kell követnünk:
- A regressziós tesztelési szakaszban a kód módosítása nem megengedett.
- A regressziós tesztesetnek a fejlesztői változtatások érintetlennek kell lennie.
- A regressziós teszteléshez használt adatbázist el kell különíteni; változtatások nem megengedettek az adatbázisban.
Az újratesztelés és a regressziós tesztelés közötti különbségek
Újratesztelés Tesztelés a funkcionalitás vagy a hiba újbóli tesztelését jelenti, hogy megbizonyosodjon a kód javításáról. Ha nincs beállítva, a hibákat nem kell újra kinyitni. Ha kijavították, a hiba megszűnt.
Az újratesztelés egy olyan tesztelési típus, amelyet annak ellenőrzésére végeznek, hogy a végső végrehajtás során sikertelen tesztesetek sikeresen átmennek a hibák kijavítása után.
Regressziós teszt a szoftveralkalmazás tesztelését jelenti, amikor az kódváltozáson megy keresztül, annak biztosítása érdekében, hogy az új kód ne legyen hatással a Szoftver más részeire.
A regressziós tesztelés egy olyan tesztelés, amelyet annak ellenőrzésére hajtanak végre, hogy egy kód nem változtatta-e meg az alkalmazás meglévő funkcióit.
Az újratesztelés és a regressziós tesztelés közötti különbségek a következők:
| Újratesztelés | Regressziós teszt |
|---|---|
| Az újratesztelést annak biztosítására végzik, hogy a végső végrehajtás során meghiúsult tesztesetek sikeresek legyenek a kijavított hibák után. | A regressziós tesztelés megbizonyosodik arról, hogy a kódmódosítás nem érintette-e a meglévő funkciókat. |
| Az újratesztelés a hibajavításokon működik. | A regressziós tesztelés célja annak biztosítása, hogy a kódváltozások ne befolyásolják hátrányosan a meglévő funkcionalitást. |
| A hibaellenőrzés az újratesztelés része. | A regressziós tesztelés nem tartalmazza a hibaellenőrzést |
| Az újratesztelés prioritása magasabb, mint a regressziós tesztelés, ezért a regressziós tesztelés előtt megtörténik. | A projekt típusa és az erőforrások rendelkezésre állása alapján a regressziós tesztelés párhuzamos lehet az újrateszteléssel. |
| Az újrateszt egy tervezett tesztelés. | A regressziós tesztelés egy általános tesztelés. |
| Nem tudjuk automatizálni a teszteseteket az újratesztelés céljából. | A regressziós teszteléshez automatizálást tudunk végezni; a kézi tesztelés költséges és időigényes lehet. |
| Az újbóli tesztelés sikertelen tesztesetekre vonatkozik. | A regressziós teszt a sikeres tesztesetekre vonatkozik. |
| Az újbóli tesztelés során győződjön meg arról, hogy az eredeti hibát kijavították. | A regressziós teszt a váratlan mellékhatásokat ellenőrzi. |
| Az újratesztelés ugyanazokkal az adatokkal és ugyanazzal a környezettel, eltérő bemenettel hajtja végre a hibákat egy új felépítéssel. | Regressziós tesztelésről van szó, amikor egy meglévő projektben módosítás történik, vagy a változtatások kötelezővé válnak. |
| Az újratesztelés nem végezhető el a tesztelés megkezdése előtt. | A regressziós tesztelés teszteseteket kaphat a működési specifikációból, a felhasználói oktatóanyagokból és kézikönyvekből, valamint a javított problémára vonatkozó hibajelentésekből. |
A regressziós tesztelés előnyei
A regressziós teszt előnyei:
- A regressziós tesztelés javítja a termék minőségét.
- Biztosítja, hogy a hibajavítások vagy változtatások ne befolyásolják a termék meglévő funkcióit.
- Az automatizálási eszközök regressziós tesztelésre használhatók.
- Biztosítja, hogy a javított problémák ne forduljanak elő újra.
A regressziós tesztelés hátrányai
A regressziós tesztelésnek számos előnye van, de vannak hátrányai is.
- Regressziós tesztet kell végezni a kód kis változtatásainál, mert a kód kis módosítása is problémákat okozhat a meglévő funkciókban.
- Ha a projektben nem automatizálást használnak a teszteléshez, akkor időigényes és fárasztó feladat lesz a teszt újra és újra végrehajtása.
Következtetés
A regressziós tesztelés az egyik alapvető szempont, mivel segít minőségi terméket szállítani, amely időt és pénzt takarít meg a szervezeteknek. Segít a minőségi termék biztosításában azáltal, hogy gondoskodik arról, hogy a kód bármilyen változtatása ne legyen hatással a meglévő funkcionalitásra.
A regressziós tesztesetek automatizálására számos automatizálási eszköz áll rendelkezésre. Egy eszköznek képesnek kell lennie a frissítésre tesztcsomag mivel a regressziós tesztet gyakran frissíteni kell.