Ghid complet de testare de regresie: Tot ce trebuie să știți



Acest articol vă va ajuta să obțineți cunoștințe aprofundate despre testarea de regresie și să explicați de ce este important să încorporați testarea de regresie în timpul testării.

Ori de câte ori este lansat un nou software, este evidentă nevoia de a testa noi funcționalități. Cu toate acestea, este la fel de important să reporniți testele vechi pe care aplicația le-a trecut anterior. În acest fel putem fi siguri că noul software nu reintroduce defecte vechi și nu creează altele noi în software. Numim acest tip de testare ca fiind testarea regresiei. De-a lungul acestui articol, vom explora testarea de regresiedetaliat. Dacă nu sunteți nou în testarea software-ului, asigurați-vă că citiți și fișierul .

Să aruncăm o privire asupra subiectelor tratate în acest articol:





Ce este testarea de regresie?

„Testarea unui program testat anterior ca urmare a modificării pentru a se asigura că defectele nu au fost introduse sau descoperite în zone neschimbate ale software-ului, ca urmare a modificărilor efectuate, se numește Testare de regresie.”

combinați codul sursă de sortare c ++

Un test de regresie este un test la nivelul întregului sistem al cărui scop principal este să se asigure că o mică modificare într-o parte a sistemului nu întrerupe funcționalitatea existentă în altă parte a sistemului. Dacă considerați regresia ca o schimbare neintenționată, atunci acest tip de testare este procesul de vânare a acestor modificări. În termeni simpli, este vorba de asigurarea faptului că vechile bug-uri nu revin să vă bântuie. Haidețiaruncați o privire la un exemplu fictiv care ilustrează conceptul.



Testarea de regresie Ex - Ce este testarea de regresie - Edureka

Când adăugați un nou tip de plată pe un site de cumpărături, repetați testele vechi pentru a vă asigura că noul cod nu a creat defecte noi sau nu le-a reintrodus pe cele vechi.Testarea de regresie este importantă deoarece, fără aceasta, este foarte posibil să se introducă remedieri intenționate într-un sistem care creează mai multe probleme decât rezolvă.

Avantajele testării de regresie

Efectuarea testelor de regresiebeneficiază companiile în mai multe moduri, cum ar fi:



  • Crește șansa de a detecta erori cauzate de modificările aduse software-ului și aplicației
  • Poate ajuta la prinderea defectelor devreme și, astfel, la reducerea costurilor pentru soluționarea acestora
  • Ajută la cercetarea efectelor secundare nedorite care ar fi putut să apară din cauza unui nou mediu de operare
  • Asigură un software mai performant datorită identificării timpurii a erorilor și erorilor
  • Cel mai important, verifică dacă modificările de cod nu reintroduc defecte vechi

Testarea de regresie asigură corectitudinea software-ului, astfel încât cea mai bună versiune a produsului să fie lansată pe piață. Cu toate acestea, în lumea reală, proiectarea și menținerea unui set aproape infinit de teste de regresie nu este fezabilă. Deci, ar trebui să știți când să aplicați testarea de regresie.

Când se aplică testarea de regresie?

Se recomandă efectuarea testelor de regresie la apariția următoarelor evenimente:

    • Când se adaugă noi funcționalități
    • În cazul cerințelor de modificare
    • Când există o remediere a defectelor
    • Când există probleme de performanță
    • În cazul schimbărilor de mediu
    • Când există o remediere a patch-urilor

Următoarea parte a acestui articol se referă la diferite tipuri de testare de regresie.

Care sunt tipurile de testare prin regresie?

Testarea de regresie se face prin mai multe faze de testare. Din acest motiv, există mai multe tipuri de testare de regresie. Unele dintre ele sunt după cum urmează:

Testarea unitara: În testarea unității atunci când se fac modificări de codificare pentru o singură unitate, un tester, de obicei dezvoltatorul responsabil pentru cod - reexecută toate testele unitare trecute anterior. În medii, testele unitare automate sunt integrate în cod, ceea ce face testarea unității foarte eficientă în comparație cu alte tipuri de testare.

Testare progresivă: Acest tip de testare funcționează eficient atunci când sunt făcute modificări în specificațiile software / aplicație, precum și noi sunt proiectate.

Testarea selectivă: În testarea selectivă, testerii utilizează un subset de cazuri de testare curente pentru a reduce costul și efortul de reevaluare. O unitate de testare trebuie reluată dacă și numai dacă oricare dintre entitățile programului pe care le acoperă a fost modificată.

Testarea din nou a tuturor testelor: Acest tip de strategie de testare implică testarea tuturor aspectelor unei anumite aplicații, precum și reutilizarea tuturor cazurilor de testare chiar și în cazul în care modificările nu au fost făcute. Este consumator de timp și nu prea este folosit atunci când se efectuează o mică modificare sau modificare a aplicației.

Testare completă: Această testare este foarte utilă atunci când au fost făcute mai multe modificări în codul existent. Efectuarea acestei testări este extrem de valoroasă pentru identificarea erorilor neașteptate. Odată ce această testare este finalizată, sistemul final poate fi pus la dispoziția utilizatorului.

Este foarte important să știți ce tip de testare se potrivește cerințelor dvs. În continuare, vom discuta modul în care este implementată testarea de regresie.

Cum se implementează testarea de regresie?

Procedura de implementare a testării de regresie este ca cea pe care o aplicați pentru orice alt proces de testare. De fiecare dată când software-ul suferă o modificare și apare o nouă versiune, dezvoltatorul efectuează acești pași ca parte a procesului de testare:

  • În primul rând, el execută teste de regresie la nivel de unitate pentru a valida codul pe care l-au modificat, împreună cu orice teste noi pe care le-au scris pentru a acoperi funcționalitatea nouă sau modificată
  • Apoi, codul modificat este fuzionat și integrat pentru a crea o nouă versiune a aplicației sub test (AUT)
  • Apoi, testele de fum sunt executate pentru a se asigura că construcția este bună înainte de efectuarea oricărei teste suplimentare
  • Odată ce construcția este declarată bună, se efectuează teste de integrare pentru a verifica interacțiunea dintre unitățile aplicației între ele și cu serviciile back-end, cum ar fi bazele de date
  • În funcție de dimensiunea și domeniul de aplicare al codului lansat, sunt programate fie o regresie parțială, fie una completă
  • Defectele sunt apoi raportate înapoi echipei de dezvoltare
  • Dacă este necesar, se efectuează runde suplimentare de teste de regresie

Acesta este modul în care testarea de regresie este încorporată într-un proces tipic de testare software. Imaginea de mai jos descrie în mod clar modul în care s-au efectuat testele de regresie.

Ori de câte ori sunt aduse unele modificări codului sursă, executarea programului eșuează din motive evidente. După eșec, codul sursă este depanat pentru a identifica erorile din program. Se fac modificări corespunzătoare. Apoi, cazurile de testare corespunzătoare sunt selectate din suita de testare deja existentă, care acoperă toate părțile modificate și afectate ale codului sursă. Dacă este necesar, se adaugă noi cazuri de testare. În cele din urmă, testarea se efectuează folosind cazurile de testare selectate. Acum s-ar putea să vă întrebați ce cazuri de testare să selectați.

Testele de regresie eficiente se pot face selectând următoarele cazuri de testare:

  • Testează cazurile care prezintă defecte frecvente
  • Cazuri complexe de testare
  • Cazuri de testare a integrării
  • Testează cazuri care acoperă funcționalitatea de bază a unui produs
  • Funcționalități frecvent utilizate
  • Testează vazele care frecvent cedează
  • Cazuri de testare a valorilor limită

Odată cu eliminarea procesului de testare a regresiei, verificăm diferite tehnici.

Tehnici de testare a regresiei

Testarea de regresie confirmă pur și simplu că software-ul modificat nu s-a modificat neintenționat și este de obicei efectuat folosind orice combinație a următoarelor tehnici:

Retestare-toate: Această metodă pur și simplu re-testează întreaga suită software, de sus în jos. În multe cazuri, majoritatea acestor teste sunt efectuate de instrumente automate. De anumite ori automatizarea nu este necesară. Această tehnică este costisitoare, deoarece necesită mai mult timp și resurse în comparație cu celelalte tehnici.

Selectarea testului: În loc să aleagă toate cazurile de testare, această metodă permite echipei să aleagă un set de teste care să aproximeze testarea completă a suitei de teste. Avantajul principal al acestei practici este că necesită mult mai puțin timp și efort pentru a efectua. De obicei realizat de dezvoltatori, care vor avea de obicei o perspectivă mai bună asupra nuanțelor cazurilor de margine de testare și a comportamentelor neașteptate.

Prioritizarea cazului de testare: Scopul acestei tehnici este de a acorda prioritate unui set limitat de cazuri de testare, luând în considerare mai multe cazuri potențiale de testare înaintea celor mai puțin importante. Sunt alese cazuri de testare care ar putea afecta atât versiunile actuale, cât și cele viitoare ale software-ului.

Acestea sunt cele trei tehnici majore. Uneori, pe baza cerințelor de testare, aceste tehnici sunt combinate.

Pe cât de util poate fi testarea de regresie, nu este lipsită de punctele sale negative. Trebuie să înțelegeți provocările cu care vă puteți confrunta atunci când îl implementați.

Provocările testării de regresie

  1. Consumă timp: Tehnici precum retest-toate necesită mult timp pentru a testa întreaga suită de cazuri de testare
  2. Scump: Costisitoare datorită resurselor și forței de muncă pe care trebuie să le testați din nou și din nou, lucru care a fost deja dezvoltat, testat și implementat în stadii incipiente
  3. Complex: Pe măsură ce produsul se extinde, testerii sunt adesea copleșiți de cantitatea uriașă de cazuri de testare și sunt victime ale pierderii urmelor cazurilor de testare, trecând cu vederea cazurile de testare importante

În ciuda acestor puncte negative, testarea de regresie este foarte utilă în procesul de testare a software-ului. Cu testele de regresie, companiile pot împiedica proiectele să depășească bugetul, își pot menține echipa pe drumul cel mai important și, cel mai important, pot preveni ca bug-urile neașteptate să le deterioreze produsele. Cu aceasta, am ajuns la sfârșitul blogului. Sper că lucrurile pe care le-ați învățat aici astăzi vă vor ajuta în timp ce vă îndreptați spre călătoria dvs. de testare a software-ului.

ce este sqoop în hadoop

Dacă ai găsit asta articol relevant, verificați live-online de Edureka, o companie de învățare online de încredere, cu o rețea de peste 250.000 de elevi mulțumiți răspândiți pe tot globul.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui „ Ce este testarea de regresie? 'Articol și vom reveni la tine.