Mi a regressziós teszt?
A REGRESSZIÓS TESZT a szoftver tesztelésének egy típusa, amely megerősíti, hogy a közelmúltbeli program- vagy kódmódosítás nem befolyásolta hátrányosan a meglévő szolgáltatásokat.
A regressziós tesztelés nem más, mint a már végrehajtott tesztesetek teljes vagy részleges kiválasztása, amelyeket a meglévő funkciók megfelelő működésének biztosítása érdekében újra végrehajtanak.
Ezt a tesztet annak biztosítására végzik, hogy az új kódváltozásoknak ne legyenek mellékhatásai a meglévő funkciókra. Biztosítja, hogy a régi kód továbbra is működjön, ha a legfrissebb kódváltozásokat elvégezték.
Ebben az oktatóanyagban megtanuljuk
- A regressziós teszt szükségessége
- Hogyan kell elvégezni a regressziós tesztet
- Tesztesetek kiválasztása regressziós teszthez
- Regresszió tesztelő eszközök
- Regresszió tesztelés és konfigurációkezelés
- Különbség az újratesztelés és a regressziós tesztelés között
- A regressziós tesztelés kihívásai
- A regresszióteszt-példa gyakorlati alkalmazása videóval
A regressziós teszt szükségessége
A regressziós tesztelés szükségessége főleg akkor merül fel, amikor szükség van a kód megváltoztatására, és meg kell vizsgálnunk, hogy a módosított kód befolyásolja-e a szoftveralkalmazás másik részét vagy sem. Ezenkívül regressziós tesztre van szükség, amikor új funkciót adnak a szoftveralkalmazáshoz, a hibák javításához, valamint a teljesítményproblémák javításához.
Hogyan kell elvégezni a regressziós tesztet
A regressziós tesztelés elvégzéséhez először ki kell derítenünk a kódot a hibák azonosításához. Miután a hibákat azonosították, a javításhoz szükséges módosításokat hajtják végre, a regressziós tesztet úgy végezzük, hogy a tesztcsomagból kiválasztunk releváns teszteseteket, amelyek a kód módosított és érintett részeire egyaránt kiterjednek.
A szoftverkarbantartás olyan tevékenység, amely magában foglalja a fejlesztéseket, a hibajavításokat, a meglévő szolgáltatások optimalizálását és törlését. Ezek a módosítások a rendszer hibás működését okozhatják. Ezért szükségessé válik a regressziós tesztelés. A regressziós teszt a következő technikákkal hajtható végre:
Ellenőrizze az összeset
- Ez a regressziós tesztelés egyik módszere, amelyben a meglévő teszttartály vagy csomag összes tesztjét újra el kell végezni. Ez nagyon drága, mivel hatalmas időt és erőforrásokat igényel.
Regressziós teszt kiválasztása
A regressziós teszt kiválasztása olyan technika, amelyben a tesztcsomagból kiválasztott néhány tesztesetet végrehajtanak annak tesztelésére, hogy a módosított kód befolyásolja-e a szoftveralkalmazást. A teszteseteket két részre osztják: újrafelhasználható tesztesetek, amelyek további regressziós ciklusokban használhatók, és elavult tesztesetek, amelyek nem használhatók a következő ciklusokban.
A tesztesetek rangsorolása
- A tesztesetek rangsorolása az üzleti hatás, a kritikus és gyakran használt funkciók függvényében. A tesztesetek prioritás alapján történő kiválasztása nagymértékben csökkenti a regressziós tesztkészletet.
Tesztesetek kiválasztása regressziós teszthez
Az ipari adatokból kiderült, hogy az ügyfelek által jelentett hibák jó része a last minute hibajavítások következménye volt, amelyek mellékhatásokat okoztak, ezért a teszteset regressziós tesztelésre történő kiválasztása művészet és nem is olyan egyszerű. A hatékony regressziós teszteket a következő tesztesetek kiválasztásával lehet elvégezni:
- Tesztesetek, amelyekben gyakran vannak hibák
- A felhasználók számára jobban látható funkciók
- Tesztesetek, amelyek igazolják a termék alapvető jellemzőit
- A több és újabb változáson átesett funkciók tesztesetei
- Minden integrációs teszteset
- Minden komplex teszteset
- Határérték-teszt esetek
- Minta a sikeres tesztesetekből
- Példa a kudarcteszt esetekre
Regresszió tesztelő eszközök
Ha a szoftverén gyakran változtatnak, a regressziós teszt költségei nőnek. Ilyen esetekben a tesztesetek manuális végrehajtása növeli a teszt végrehajtásának idejét és a költségeket. A regressziós teszt esetek automatizálása az okos választás ilyen esetekben. Az automatizálás mértéke azon tesztesetek számától függ, amelyek továbbra is használhatók az egymást követő regressziós ciklusokban.
Az alábbiakban bemutatjuk a legfontosabb eszközöket, amelyeket mind a funkcionális, mind a regressziós teszteléshez használnak a szoftverfejlesztésben:
Szelén : Ez egy nyílt forráskódú eszköz, amelyet webalkalmazások automatizálására használnak. A szelén felhasználható böngészőalapú regressziós teszteléshez.
Gyors teszt professzionális (QTP) : A HP Quick Test Professional automatizált szoftver a funkcionális és regressziós teszt esetek automatizálására. Az automatizáláshoz a VBScript nyelvet használja. Ez egy adatközpontú, kulcsszóalapú eszköz.
Racionális funkcionális tesztelő (RFT) : Az IBM racionális funkcionális tesztelője egy Java eszköz, amelyet a szoftveralkalmazások teszteseteinek automatizálására használnak. Ezt elsősorban regressziós tesztesetek automatizálására használják, és a Rational Test Managerrel is integrálódik.
Regresszió tesztelés és konfigurációkezelés
A konfigurációkezelés a regressziós tesztelés során elengedhetetlenné válik az agilis környezetekben, ahol a kódot folyamatosan módosítják. A hatékony regressziós tesztek biztosítása érdekében tartsa be a következőket:
- A regressziós tesztelés alatt álló kódnak egy konfigurációkezelő eszközön kell lennie
- A regressziós teszt fázisában nem szabad változtatni a kódban. A regressziós teszt kódját immunitásban kell tartani a fejlesztői változásokkal szemben.
- A regressziós teszthez használt adatbázist el kell különíteni. Nem engedélyezhető adatbázis-módosítás
Különbség az újratesztelés és a regressziós tesztelés között:
Az újbóli tesztelés a funkció vagy a hiba újbóli tesztelését jelenti a kód javításának biztosítása érdekében. Ha nem javítottuk, akkor a Defect-et újra meg kell nyitni. Ha javítva van, a Hiba zárva van.
A regressziós teszt a szoftveralkalmazás tesztelését jelenti, amikor kódváltozáson esnek át, hogy megbizonyosodjanak arról, hogy az új kód nem érinti a szoftver más részeit.
Nézze meg itt a különbségek teljes listáját.
A regressziós tesztelés kihívásai:
Az alábbiakban bemutatjuk a regressziós tesztelés fő tesztelési problémáit:
- Az egymást követő regressziós futásokkal a tesztkészletek meglehetősen nagyok lesznek. Az idő és a költségvetés korlátai miatt a teljes regressziós tesztkészlet nem hajtható végre
- A tesztcsomag minimalizálása és a maximális teszt lefedettség elérése továbbra is kihívást jelent
- A regressziós tesztek gyakoriságának meghatározása, azaz minden módosítás, minden build-frissítés vagy egy csomó hibajavítás után kihívást jelent.
A regresszióteszt-példa gyakorlati alkalmazása videóval
Kattintson ide, ha a videó nem érhető el
Következtetés:
Hatékony regressziós stratégia, időt és pénzt takarít meg a szervezetek számára. A banki ügyek egyik esettanulmányának megfelelően a regresszió akár 60% időt takarít meg a hibajavításokban (amelyeket regressziós tesztek fogtak volna meg), és 40% -ot pénzben