logo

Što je regresijsko testiranje?

Regresijsko testiranje je tehnika testiranja crne kutije. Koristi se za provjeru autentičnosti. Promjena koda u softveru ne utječe na postojeću funkcionalnost proizvoda. Regresijsko testiranje osigurava da proizvod dobro radi s novom funkcionalnošću, ispravcima programskih pogrešaka ili bilo kojom promjenom postojeće značajke.

Regresijsko testiranje je vrsta testiranje softvera . Testni slučajevi se ponovno provode kako bi se provjerilo radi li prethodna funkcionalnost aplikacije dobro, a nove promjene nisu proizvele greške.

Regresijsko testiranje može se provesti na novoj verziji kada postoji značajna promjena u izvornoj funkcionalnosti. Osigurava da kod i dalje radi čak i kada se promjene događaju. Regresija znači ponovno testiranje onih dijelova aplikacije koji su nepromijenjeni.

Regresijski testovi poznati su i kao metoda verifikacije. Testni slučajevi često su automatizirani. Testne slučajeve potrebno je izvršiti mnogo puta, a ručno izvođenje istog testnog slučaja oduzima puno vremena i zamorno je.

Primjer regresijskog testiranja

Ovdje ćemo uzeti slučaj da učinkovito definiramo regresijsko testiranje:

Razmotrite proizvod Y, u kojem je jedna od funkcija pokretanje potvrde, prihvaćanja i slanja e-pošte. Također ga treba testirati kako bi se osiguralo da promjena koda nije utjecala na njih. Regresivno testiranje ne ovisi ni o jednom programskom jeziku kao što je Java , C++ , C# , itd. Ova se metoda koristi za testiranje proizvoda za modifikacije ili bilo kakva ažuriranja. Osigurava da bilo koja promjena u proizvodu ne utječe na postojeći modul proizvoda. Provjerite jesu li pogreške ispravljene i novo dodane značajke nisu stvarale nikakav problem u prethodnoj radnoj verziji softvera.

Kada možemo provesti regresijsko testiranje?

Radimo regresijsko testiranje svaki put kad se modificira proizvodni kod.

Regresijsko testiranje možemo izvesti u sljedećem scenariju, a to su:

1. Kada se aplikaciji doda nova funkcionalnost.

Primjer:

Web stranica ima funkciju prijave koja korisnicima omogućuje prijavu samo putem e-pošte. Sada nudimo novu značajku za prijavu putem Facebooka.

2. Kada postoji zahtjev za promjenom.

Primjer:

broj u string java

Zapamtite lozinku uklonjenu sa stranice za prijavu koja je prethodno bila primjenjiva.

3. Kada je kvar popravljen

Primjer:

Pretpostavimo da gumb za prijavu ne radi na stranici za prijavu i tester prijavljuje grešku navodeći da je gumb za prijavu pokvaren. Nakon što programeri poprave pogrešku, tester je testira kako bi se uvjerio da gumb za prijavu radi prema očekivanom rezultatu. Istovremeno, tester testira druge funkcionalnosti koje se odnose na gumb za prijavu.

4. Kada postoji popravak problema s performansama

Primjer:

Učitavanje početne stranice traje 5 sekundi, čime se vrijeme učitavanja smanjuje na 2 sekunde.

5. Kada dođe do promjene okruženja

Primjer:

Kada ažuriramo bazu podataka iz MySql u Oracle.

Kako izvesti regresijsko testiranje?

Potreba za regresijskim testiranjem dolazi kada održavanje softvera uključuje poboljšanja, ispravke pogrešaka, optimizaciju i brisanje postojećih značajki. Ove izmjene mogu utjecati na funkcionalnost sustava. Regresijsko testiranje postaje neophodno u ovom slučaju.

Regresijsko testiranje može se provesti pomoću sljedećih tehnika:

regresijsko testiranje

1. Ponovno testirajte sve:

Re-Test je jedan od pristupa regresijskom testiranju. U ovom pristupu, sve testne slučajeve treba ponovno izvršiti. Ovdje možemo definirati ponovni test kao kada test ne uspije, a mi utvrdimo da je uzrok kvara softverska greška. Greška je prijavljena, možemo očekivati ​​novu verziju softvera u kojoj je greška otklonjena. U tom slučaju morat ćemo ponovno izvršiti test kako bismo potvrdili da je greška ispravljena. Ovo je poznato kao ponovno testiranje. Neki će ovo nazvati potvrdnim testiranjem.

Ponovno testiranje je vrlo skupo, jer zahtijeva ogromno vrijeme i resurse.

2. Odabir regresijskog testa:

  • U ovoj tehnici, odabrani testni slučaj će se izvršiti, a ne cijeli testni slučaj.
  • Odabrani test slučajevi su podijeljeni u dva slučaja
    1. Test slučajevi za višekratnu upotrebu.
    2. Zastarjeli testni slučajevi.
  • Višekratni testni slučajevi mogu se koristiti u sljedećem ciklusu regresije.
  • Zastarjeli testni slučajevi ne mogu se koristiti u sljedećem ciklusu regresije.

3. Određivanje prioriteta testnih slučajeva:

Odredite prioritet testnog slučaja ovisno o utjecaju na poslovanje, kritičnoj i često korištenoj funkcionalnosti. Odabir testnih slučajeva smanjit će skup regresijskih testova.

Što su alati za regresijsko testiranje?

Regresijsko testiranje vitalni je dio procesa osiguranja kvalitete; tijekom izvođenja regresije možemo se suočiti sa sljedećim izazovima:

    Oduzima puno vremena
    Regresijsko testiranje oduzima puno vremena za dovršetak. Regresijsko testiranje ponovno uključuje postojeće testove, tako da ispitivači nisu uzbuđeni ponovno izvoditi test.Kompleks
    Regresijsko testiranje je također složeno kada postoji potreba za ažuriranjem bilo kojeg proizvoda; liste testova također se povećavaju.Poslovno pravilo komunikacije
    Regresijsko testiranje osigurava da postojeće značajke proizvoda još uvijek rade. Komunikacija o regresijskom testiranju s netehničkim voditeljem može biti težak zadatak. Izvršni direktor želi vidjeti napredak proizvoda i ulaganje značajnog vremena u regresijsko testiranje kako bi se osiguralo da rad postojeće funkcionalnosti može biti težak.Odredite područje utjecaja Testni slučajevi povećavaju izdanje po izdanje Manje resursa Nema točnosti Zadatak koji se ponavlja Monotoni posao

Proces regresijskog testiranja

Proces regresijskog testiranja može se provesti preko gradi i oslobađanja .

Regresijsko testiranje u svim verzijama

Kad god se pogreška ispravi, ponovno testiramo pogrešku, a ako postoji bilo koji zavisni modul, idemo na regresijsko testiranje.

regresijsko testiranje

Na primjer , Kako izvodimo regresijsko testiranje ako imamo različite građe kao Build 1, Build 2 i Build 3 , koji imaju različite scenarije.

Build1

  • Prvo će klijent osigurati poslovne potrebe.
  • Zatim razvojni tim počinje razvijati značajke.
  • Nakon toga, tim za testiranje će početi pisati testne slučajeve; na primjer, oni pišu 900 testnih slučajeva za izdanje #1 proizvoda.
  • A onda će početi implementirati testne slučajeve.
  • Nakon što je proizvod pušten u promet, kupac provodi jedan krug prihvatljivog testiranja.
  • I na kraju, proizvod se premješta na produkcijski poslužitelj.

Build2

  • Sada kupac traži dodavanje 3-4 dodatne (nove) značajke i također daje zahtjeve za nove značajke.
  • Razvojni tim počinje razvijati nove značajke.
  • Nakon toga, tim za testiranje počet će pisati testni slučaj za nove značajke, a oni će napisati oko 150 novih testnih slučajeva. Stoga je ukupan broj napisanih testnih slučajeva 1050 za oba izdanja.
  • Tim za testiranje sada počinje testirati nove značajke koristeći 150 novih testnih slučajeva.
  • Nakon što to bude gotovo, počet će testirati stare značajke uz pomoć 900 testnih slučajeva kako bi provjerili je li dodavanje nove značajke oštetilo stare značajke ili ne.
  • Ovdje je testiranje starih značajki poznato kao Regresijsko testiranje .
  • Nakon testiranja svih značajki (Novog i Starog), proizvod se predaje kupcu, a zatim će kupac obaviti prijemno testiranje.
  • Nakon što je testiranje prihvatljivosti obavljeno, proizvod se premješta na proizvodni poslužitelj.

Build3

  • Nakon drugog izdanja, kupac želi ukloniti jednu od značajki kao što je prodaja.
  • Zatim će izbrisati sve testne slučajeve koji pripadaju prodajnom modulu (oko 120 testnih slučajeva).
  • Zatim testirajte drugu značajku kako biste provjerili rade li sve druge značajke dobro nakon uklanjanja testnih slučajeva modula prodaje, a ovaj se postupak provodi pod regresijskim testiranjem.

Bilješka:

  • Testiranje stabilnih značajki kako bi se osiguralo da je pokvaren zbog promjena. Ovdje promjene podrazumijevaju da izmjene, dodavanja, ispravljanja grešaka ili brisanja .
  • Ponovno izvršavanje istih testnih slučajeva u različitim verzijama ili izdanjima osigurava da promjene (modifikacija, dodavanje, ispravljanje grešaka ili brisanje) ne unose greške u stabilne značajke.

Regresijsko testiranje kroz izdanje

Proces regresijskog testiranja započinje kad god postoji novo izdanje za isti projekt jer nova značajka može utjecati na stare elemente u prethodnim izdanjima.

Da bismo razumjeli proces regresijskog testiranja, slijedit ćemo korake u nastavku:

Korak 1

Nema regresijskog testiranja Izdanje #1 jer se u Izdanju #1 ne događa nikakva izmjena jer je samo izdanje novo.

Korak 2

Koncept regresijskog testiranja polazi od Izdanje #2 kad mušterija da nešto novi zahtjevi .

Korak 3

Nakon što prvo dobiju nove zahtjeve (modificiranje značajki), oni (programeri i testni inženjeri) će razumjeti potrebe prije nego što odu na analiza utjecaja .

Korak 4

Nakon razumijevanja novih zahtjeva, izvršit ćemo jedan krug analiza utjecaja kako bi se izbjegao veliki rizik, ali ovdje se postavlja pitanje tko će raditi analizu utjecaja?

Korak 5

Analizu utjecaja provodi kupac na temelju njihovih poslovno znanje , the programer na temelju njihovih znanje kodiranja , i što je najvažnije, to radi ispitni inženjer jer oni imaju poznavanje proizvoda .

Napomena: Ako jedna osoba radi, on/ona možda neće pokriti sva područja utjecaja, stoga uključujemo sve osobe kako bismo mogli pokriti maksimalno područje utjecaja, a analizu utjecaja treba napraviti u ranim fazama izdanja.

Korak 6

Nakon što završimo s područje utjecaja , tada će programer pripremiti područje udara (dokument) , i kupac također će pripremiti dokument o području utjecaja tako da možemo postići maksimalan obuhvat analize utjecaja .

Korak 7

Nakon dovršetka analize utjecaja, razvojni programer, kupac i testni inženjer poslat će Izvještaji# dokumenata područja utjecaja na Test Lead . A u međuvremenu, testni inženjer i programer zauzeti su radom na novom testnom slučaju.

Korak 8

Jednom kada voditelj testiranja dobije izvještaje #, on/ona će konsolidirati izvješća i pohranjena u repozitorij zahtjeva testnog slučaja za izdanje #1.

Napomena: Repozitorij testnih slučajeva: Ovdje ćemo spremiti sve testne slučajeve izdanja.

Korak9

Nakon toga, Test Lead će uzeti pomoć RTM-a i odabrati ono što je potrebno regresijski test slučaj od repozitorij testnih slučajeva , a te će datoteke biti smještene u Paket regresijskih testova .

Bilješka:

  • Testni vod će pohraniti slučaj regresijskog testa u paket regresijskih testova kako ne bi došlo do daljnje zabune.
  • Skup regresijskih testova: Ovdje ćemo spremiti sve dokumente ispitivanja područja udara.Regresijski testni slučajevi: Ovo su testni slučajevi tekstualnog dokumenta starih izdanja koji se moraju ponovno izvršiti kao što možemo vidjeti na slici ispod:
regresijsko testiranje

Korak10

Nakon toga, kada testni inženjer završi s radom na novim testnim slučajevima, voditelj testa će dodijeliti regresijski testni slučaj inženjeru za ispitivanje.

Korak11

abeceda po broju

Kada su svi slučajevi regresijskog testa i nove značajke stabilan i prolazan , zatim provjerite područje udarca pomoću testnog slučaja dok ne bude izdržljiv za stare značajke plus nove značajke, a zatim će biti predan kupcu.

regresijsko testiranje

Vrste regresijskog testiranja

Različite vrste regresijskog testiranja su sljedeće:

  1. Jedinično regresijsko testiranje [URT]
  2. Regionalno regresijsko testiranje [RRT]
  3. Potpuno ili potpuno regresijsko testiranje [FRT]
regresijsko testiranje

1) Jedinično regresijsko testiranje [URT]

U ovom ćemo testirati samo promijenjenu jedinicu, a ne područje udara, jer može utjecati na komponente istog modula.

Primjer1

U donjoj aplikaciji i u prvoj verziji programer razvija traži gumb koji prihvaća 1-15 znakova . Zatim testni inženjer testira gumb Traži uz pomoć tehnika dizajna testnog slučaja .

regresijsko testiranje

Sada klijent radi neke izmjene u zahtjevu i također zahtijeva da Gumb za pretraživanje može prihvatiti 1-35 znakova . Inženjer za testiranje testirat će samo gumb Traži kako bi potvrdio da ima 1-35 znakova i ne provjerava daljnje značajke prve verzije.

Primjer2

Evo, imamo Izrada B001 , a kvar se identificira i izvješće se dostavlja razvojnom programeru. Programer će popraviti grešku i poslati zajedno s nekim novim značajkama koje su razvijene u drugom Izrada B002 . Nakon toga, ispitni inženjer će testirati tek nakon što se kvar otkloni.

  • Inženjer za testiranje to će prepoznati klikom na podnijeti gumb ide na praznu stranicu.
  • I to je kvar i šalje se programeru da ga popravi.
  • Kada nova verzija dođe zajedno s ispravcima grešaka, testni inženjer će testirati samo gumb Pošalji.
  • I ovdje, nećemo provjeravati druge značajke prve verzije i testirati nove značajke poslane u drugoj verziji.
  • Sigurni smo da popravljanje podnijeti gumb neće utjecati na ostale značajke, pa testiramo samo ispravljeni bug.
regresijsko testiranje

Stoga možemo reći da se testiranjem samo promijenjena značajka naziva Jedinično regresijsko testiranje .

2) Regionalno regresijsko testiranje [RRT]

U ovom ćemo testirati modifikaciju zajedno s područjem ili regijama utjecaja koje se nazivaju Regionalno regresijsko testiranje . Ovdje testiramo područje utjecaja jer ako postoje pouzdani moduli, to će utjecati i na ostale module.

Na primjer:

Na donjoj slici vidimo da imamo četiri različita modula, kao što je Modul A, Modul B, Modul C i Modul D , koje su programeri dali za testiranje tijekom prve izgradnje. Sada će testni inženjer identificirati pogreške Modul D . Izvješće o pogrešci šalje se programerima, a razvojni tim popravlja te nedostatke i šalje drugu verziju.

regresijsko testiranje

U drugoj verziji, prethodni nedostaci su popravljeni. Testni inženjer sada razumije da je ispravljanje pogrešaka u Modulu D utjecalo na neke značajke Modul A i Modul C . Stoga inženjer za testiranje prvo testira modul D u kojem je pogreška ispravljena, a zatim provjerava područja udara u Modul A i Modul C . Stoga je ovo testiranje poznato kao Regionalno regresijsko testiranje.

Tijekom izvođenja regionalnog regresijskog testiranja možemo se suočiti sa sljedećim problemom:

Problem:

U prvoj izradi, klijent šalje neke izmjene u zahtjevu i također želi dodati nove značajke u proizvod. Potrebe se šalju oba tima, tj. razvoju i testiranju.

t ff

Nakon dobivanja zahtjeva, razvojni tim počinje raditi izmjene i također razvija nove značajke na temelju potreba.

Sada voditelj testa šalje e-poštu klijentima i pita ih da li su sva područja utjecaja na koja će utjecati nakon što se izvrše potrebne izmjene. Stoga će kupac dobiti ideju koje sve značajke treba ponovno testirati. On/ona će također poslati e-poštu razvojnom timu kako bi znao na koja će sve područja u aplikaciji utjecati promjene i dodavanja novih značajki.

I slično, kupac šalje e-mail timu za testiranje radi popisa područja utjecaja. Stoga će voditelj testiranja prikupiti popis utjecaja od klijenta, razvojnog tima i tima za testiranje.

Ovaj Popis utjecaja šalje se svim inženjerima za testiranje koji gledaju popis i provjeravaju jesu li njihove značajke izmijenjene i ako jesu, onda to čine regionalno regresijsko testiranje . Područja udara i modificirana područja testiraju nadležni inženjeri. Svaki inženjer testira samo svoje značajke koje su mogle biti pogođene kao rezultat izmjene.

Problem s ovim gore navedenim pristupom je taj što voditelj testa možda neće dobiti cjelovitu ideju o područjima utjecaja jer razvojni tim i klijent možda neće imati toliko vremena za vraćanje njegove/njezine pošte.

Riješenje

Da bismo riješili gore navedeni problem, slijedit ćemo postupak u nastavku:

Kada dođe nova verzija zajedno s najnovijim značajkama i ispravcima grešaka, tim za testiranje će organizirati sastanak na kojem će razgovarati o tome utječu li njihove značajke zbog gore navedenih izmjena. Stoga će napraviti jedan krug Analiza utjecaja i generirati Popis utjecaja . U ovom konkretnom popisu, inženjer za testiranje pokušava priložiti najveća moguća područja udara, što također smanjuje mogućnost dobivanja nedostataka.

Kada dođe nova verzija, tim za testiranje slijedi sljedeći postupak:

  • Provest će testiranje dima kako bi provjerili osnovnu funkcionalnost aplikacije.
  • Zatim će testirati nove značajke.
  • Nakon toga će provjeriti promijenjene značajke.
  • Nakon što završe s provjerom promijenjenih značajki, testni inženjer će ponovno testirati greške.
  • Zatim će provjeriti područje utjecaja provedbom regionalnog regresijskog testiranja.

Nedostatak korištenja jediničnog i regionalnog regresijskog testiranja

Slijede neki od nedostataka korištenja jediničnog i regionalnog regresijskog testiranja:

  • Možda ćemo propustiti neko područje udara.
  • Moguće je da identificiramo pogrešno područje udara.

Napomena: Možemo reći da će nas veliki posao koji radimo na regionalnom regresijskom testiranju dovesti do većeg broja nedostataka. No, ako ćemo jednako predano raditi na potpunom regresijskom testiranju, dobit ćemo manji broj nedostataka. Stoga, ovdje možemo utvrditi da nam poboljšanje u naporima testiranja neće pomoći da dobijemo više nedostataka.

3) Potpuno regresijsko testiranje [FRT]

Tijekom drugog i trećeg izdanja proizvoda, klijent traži dodavanje 3-4 nove značajke, a također treba popraviti neke nedostatke iz prethodnog izdanja. Zatim će tim za testiranje napraviti analizu utjecaja i utvrditi da će nas gornja izmjena dovesti do testiranja cijelog proizvoda.

Stoga možemo reći da je testiranje modificirane karakteristike i sve preostale (stare) karakteristike naziva se Potpuno regresijsko testiranje .

regresijsko testiranje

Kada provodimo potpuno regresijsko testiranje?

Provest ćemo FRT kada budemo imali sljedeće uvjete:

  • Kada se izmjena odvija u izvornoj datoteci proizvoda. Na primjer , JVM je korijenska datoteka JAVA aplikacije, a ako će se dogoditi bilo kakva promjena u JVM-u, testirat će se cijeli JAVA program.
  • Kada moramo izvršiti n-broj promjena.

Bilješka:

Regionalno regresijsko testiranje idealan je pristup regresijskom testiranju, no problem je u tome što bismo mogli propustiti mnogo nedostataka tijekom izvođenja regionalnog regresijskog testiranja.

I ovdje ćemo riješiti ovaj problem uz pomoć sljedećeg pristupa:

  • Kada se podnese prijava za testiranje, inženjer za testiranje testirat će prvih 10-14 ciklusa i izvršit će RRT .
  • Zatim za 15. ciklus, radimo FRT. I opet, sljedećih 10-15 ciklusa, mi to radimo Regionalno regresijsko testiranje , a za 31. ciklus, radimo potpuno regresijsko testiranje , i nastavit ćemo tako.
  • Ali za zadnjih deset ciklusa izdanja, nastupit ćemo samo kompletno regresijsko testiranje .

Stoga, ako slijedimo gornji pristup, možemo dobiti više nedostataka.

Nedostatak ponavljanja ručnog regresijskog testiranja:

  • Produktivnost će se smanjiti.
  • Težak je to posao.
  • Nema dosljednosti u izvođenju testa.
  • Također je povećano vrijeme izvršenja testa.

Stoga ćemo ići na automatizaciju kako bismo riješili te probleme; kada imamo n-broj ciklusa regresijskog testa, ići ćemo na automatizacija procesa regresijskog testiranja .

Automatizirani postupak regresijskog testiranja

Općenito, idemo na automatizaciju kad god postoji više izdanja ili višestruki ciklus regresije ili postoji ponavljajući zadatak.

Proces automatiziranog regresijskog testiranja može se provesti u sljedećim koracima:

Napomena 1:

Proces testiranja aplikacije pomoću nekih alata poznat je kao automatizirano testiranje.

Pretpostavimo da uzmemo jedan ogledni primjer a Modul za prijavu , zatim kako možemo izvesti regresijsko testiranje.

Ovdje se prijava može izvršiti na dva načina, a to su:

regresijsko testiranje

Ručno: U ovom slučaju, regresiju ćemo izvesti samo jednom i dva puta.

Automatizacija: U ovom slučaju, automatizaciju ćemo izvršiti više puta jer moramo napisati testne skripte i izvršiti izvršenje.

Napomena 2: U stvarnom vremenu, ako smo se suočili s nekim problemima kao što su:

Problemi Rukovati po
Nove značajke Inženjer ručnog ispitivanja
Značajke regresijskog testiranja Inženjer za testiranje automatizacije
Preostalo (110 značajki + Izdanje#1) Inženjer ručnog ispitivanja

Korak 1

Kada započne novo izdanje, ne idemo na automatizaciju jer ne postoji koncept regresijskog testiranja i slučaja regresijskog testa kako smo to shvatili u gornjem procesu.

Korak 2

Kada započne novo izdanje i poboljšanje, imamo dva tima, tj. ručni tim i tim za automatizaciju.

Korak 3

Ručni tim proći će kroz zahtjeve i također identificirati područje udara i predati skup zahtjeva za testiranje timu za automatizaciju.

Korak 4

Sada, ručni tim počinje raditi na novim značajkama, a tim za automatizaciju počet će razvijati testnu skriptu i također započeti s automatizacijom testnog slučaja, što znači da će regresijski testni slučajevi biti pretvoreni u testnu skriptu.

Korak 5

Prije nego oni (tim za automatizaciju) počnu automatizirati testni slučaj, također će analizirati koji se sve slučajevi mogu automatizirati ili ne.

Korak 6

Na temelju analize pokrenut će automatizaciju, odnosno pretvaranje svakog regresijskog testa u test skriptu.

Korak 7

Tijekom ovog procesa, oni će uzeti pomoć od Slučajevi regresije jer nemaju toliko znanja o proizvodu alat i primjena .

Korak 8

Nakon što je testna skripta spremna, počet će izvršavanje tih skripti na novoj aplikaciji [stara značajka]. Budući da je testna skripta napisana uz pomoć značajke regresije ili stare značajke.

Korak9

Nakon što je izvršenje dovršeno, dobivamo drugačiji status poput Položio/nio .

Korak10

Ako je status neuspješan, što znači da ga treba ponovno ručno potvrditi, a ako Bug postoji, tada će se prijaviti dotičnom programeru. Kada programer popravi tu pogrešku, pogrešku treba ponovno testirati zajedno s područjem utjecaja od strane inženjera za ručno testiranje, a također skriptu treba ponovno izvršiti inženjer za testiranje automatizacije.

Korak11

Ovaj proces traje sve dok se sve nove značajke i značajka regresije ne prođu.

regresijsko testiranje

Prednosti provođenja regresijskog testiranja automatiziranim testiranjem:

    Točnostuvijek postoji jer zadatak obavljaju alati, a alati nikad ne dosade ili se ne umore.
  • Testna skripta može se ponovno koristiti u više izdanja.
  • Skupno izvođenjemoguće je korištenjem automatizacije tj. sve napisane testne skripte mogu se izvršavati paralelno ili istovremeno.
  • Iako se broj regresijskih testnih slučajeva povećava po izdanju po izdanju, ne moramo povećavati resurse za automatizaciju jer su neki regresijski slučajevi već automatizirani iz prethodnog izdanja.
  • To je proces uštede vremena jer je izvedba uvijek brža od ručne metode.

Kako odabrati test slučajeve za regresijsko testiranje?

To je utvrdila industrijska inspekcija. Nekoliko nedostataka koje je prijavio korisnik nastalo je zbog ispravki bugova u posljednjem trenutku. Stvaranje nuspojava, a time i odabir testnog slučaja za regresijsko testiranje, umjetnost je, a ne lak zadatak.

c# poduka

Regresijski test se može napraviti:

  • Testni slučaj koji ima česte nedostatke
  • Funkcionalnosti koje su vidljivije korisnicima.
  • Test slučajevi provjeravaju temeljne značajke proizvoda.
  • Svi testni slučajevi integracije
  • Svi složeni test slučajevi
  • Slučajevi ispitivanja graničnih vrijednosti
  • Uzorak uspješnih testnih slučajeva
  • Neuspjeh testnih slučajeva

Alati za regresijsko testiranje

Ako se softver često mijenja, troškovi regresijskog testiranja također se povećavaju. U tim slučajevima, ručno izvođenje testnih slučajeva povećava vrijeme izvođenja testa, kao i troškove. U tom slučaju, testiranje automatizacije je najbolji izbor. Trajanje automatizacije ovisi o broju testnih slučajeva koji se mogu ponovno koristiti za uzastopne cikluse regresije.

Slijede osnovni alati koji se koriste za regresijsko testiranje:

Selen

Selenium je alat otvorenog koda. Ovaj alat koji se koristi za automatizirano testiranje web aplikacije. Za regresijsko testiranje temeljeno na pregledniku korišten je selen. Selen se koristi za regresijski test razine korisničkog sučelja za web aplikaciju.

Ranorex studio

Automatizacija regresijskog testa sve u jednom za desktop, web i mobilne aplikacije s ugrađenim Selenium Web Driver-om. Ranorex Studio uključuje pune IDE plus alate za automatizaciju bez koda.

Quick Test Professional (QTP)

QTP je automatizirani alat za testiranje koji se koristi za regresijsko i funkcionalno testiranje. To je alat koji se temelji na podacima i na ključnim riječima. Za automatizaciju je koristio jezik VBScript. Ako otvorimo QTP alat, vidjet ćemo tri gumba koji su Snimi, pusti i zaustavi . Ovi gumbi pomažu u bilježenju svakog klika i radnje izvršene na računalnom sustavu. Snima radnje i reproducira ih.

regresijsko testiranje

Rational Functional Tester (RTF)

Rational funkcionalni tester je Java alat koji se koristi za automatizaciju testnih slučajeva softverskih aplikacija. RTF se koristi za automatizaciju regresijskih testnih slučajeva, a također se integrira s racionalnim funkcionalnim testerom.

Za više informacija o regresiji i alatima za automatizirano testiranje pogledajte poveznicu u nastavku:

https://www.javatpoint.com/automation-testing-tool

Regresijsko testiranje i upravljanje konfiguracijom

Upravljanje konfiguracijom u regresijskom testiranju postaje imperativ u Agilnim okruženjima, gdje se kod kontinuirano modificira. Kako bismo osigurali valjan regresijski test, moramo slijediti korake:

  • Promjene u kodu nisu dopuštene tijekom faze regresijskog testiranja.
  • Na slučaj regresijskog testa ne smiju utjecati promjene programera.
  • Baza podataka koja se koristi za regresijsko testiranje mora biti izolirana; izmjene nisu dopuštene u bazi podataka.

Razlike između ponovnog testiranja i regresijskog testiranja

Ponovno testiranje Testiranje znači ponovno testiranje funkcionalnosti ili buga kako bi se osiguralo da je kôd popravljen. Ako nije postavljeno, nedostatke nije potrebno ponovno otvarati. Ako se popravi, kvar se zatvara.

Ponovno testiranje je vrsta testiranja koja se provodi kako bi se provjerilo da li su testni slučajevi koji su bili neuspješni u konačnom izvođenju uspješno prošli nakon popravka nedostataka.

Regresijsko testiranje znači testiranje softverske aplikacije kada se podvrgne promjeni koda kako bi se osiguralo da novi kod nije utjecao na druge dijelove softvera.

Regresijsko testiranje je vrsta testiranja koja se provodi kako bi se provjerilo nije li kod promijenio postojeću funkcionalnost aplikacije.

Razlike između ponovnog testiranja i regresijskog testiranja su sljedeće:

Ponovno testiranje Regresijsko testiranje
Ponovno testiranje provodi se kako bi se osiguralo da testni slučajevi koji nisu uspjeli u konačnom izvođenju prolaze nakon što su nedostaci popravljeni. Regresijsko testiranje provodi se kako bi se potvrdilo nije li promjena koda utjecala na postojeće značajke.
Ponovno testiranje radi na ispravcima nedostataka. Svrha regresijskog testiranja je osigurati da promjene koda nepovoljno utječu na postojeću funkcionalnost.
Provjera nedostataka dio je ponovnog testiranja. Regresijsko testiranje ne uključuje provjeru nedostataka
Prioritet ponovnog testiranja veći je od regresijskog testiranja, pa se radi prije regresijskog testiranja. Na temelju vrste projekta i dostupnosti resursa, regresijsko testiranje može biti paralelno s ponovnim testiranjem.
Ponovno testiranje je planirano testiranje. Regresijsko testiranje je generičko testiranje.
Ne možemo automatizirati testne slučajeve za ponovno testiranje. Možemo napraviti automatizaciju za regresijsko testiranje; ručno testiranje moglo bi biti skupo i dugotrajno.
Ponovno testiranje je za neuspješne testne slučajeve. Regresijsko testiranje je za položene testne slučajeve.
Ponovnim testiranjem provjerite je li izvorna greška ispravljena. Regresijsko testiranje provjerava neočekivane nuspojave.
Ponovno testiranje izvršava nedostatke s istim podacima i istim okruženjem s različitim unosom s novom verzijom. Regresijsko testiranje je kada postoji modifikacija ili promjene postanu obvezne u postojećem projektu.
Ponovno testiranje ne može se obaviti prije početka testiranja. Regresijsko testiranje može dobiti testne slučajeve iz funkcionalne specifikacije, korisničke upute i priručnike te izvješća o nedostacima u odnosu na ispravljeni problem.

Prednosti regresijskog testiranja

Prednosti regresijskog testiranja su:

  • Regresijsko testiranje povećava kvalitetu proizvoda.
  • Osigurava da ispravci pogrešaka ili promjene ne utječu na postojeću funkcionalnost proizvoda.
  • Alati za automatizaciju mogu se koristiti za regresijsko testiranje.
  • Osigurava da se otklonjeni problemi više ne pojavljuju.

Nedostaci regresijskog testiranja

Postoji nekoliko prednosti regresijskog testiranja, ali postoje i nedostaci.

  • Regresijsko testiranje treba provesti za male promjene u kodu jer čak i neznatna promjena u kodu može stvoriti probleme u postojećoj funkcionalnosti.
  • Ako se u slučaju da se u projektu ne koristi automatizacija za testiranje, izvršavanje testa iznova i iznova bit će dugotrajan i zamoran zadatak.

Zaključak

Regresijsko testiranje jedan je od bitnih aspekata jer pomaže u isporuci kvalitetnog proizvoda koji organizacijama štedi vrijeme i novac. Pomaže u pružanju kvalitetnog proizvoda osiguravajući da bilo koja promjena u kodu ne utječe na postojeću funkcionalnost.

Za automatizaciju regresijskih testnih slučajeva postoji nekoliko dostupnih alata za automatizaciju. Alat bi trebao imati mogućnost ažuriranja paket za testiranje budući da se odijelo za regresijski test treba često ažurirati.