ce învățăm pe acest Post

testarea Software-ului este procesul de verificare a erorilor software-ului. Nu este crucial doar pentru succesul unui produs, ci și pentru procesul de dezvoltare în sine. Cu toate acestea, poate fi o provocare pentru mulți oameni, deoarece testarea software-ului necesită abilități și tehnici diferite decât alte domenii de dezvoltare software, cum ar fi codificarea sau analiza. Acest articol va acoperi modul în care abordăm testarea software-ului în contextul strategiei noastre de testare și modul în care urmărim rezultatele testelor.

te-ai întrebat vreodată dacă retestarea software-ului este chiar necesară? Sigur că da! Știm cu toții că costul dezvoltării de software poate fi ridicat. Ceea ce nu știm este cât de des ar trebui să ne retestăm codul pentru a ne asigura că funcționează în continuare. Ei bine, acest articol va explica conceptul de retestare în testarea software-ului și va oferi câteva motive pentru care testarea codului dvs. după fiecare lansare poate să nu fie o idee atât de proastă.

ce este retestarea?

retestarea este procesul general de testare a ceva (în acest caz software) din nou pentru a vă asigura că totul funcționează conform așteptărilor și unul bun de utilizat dacă doriți să identificați problemele cu o aplicație sau un sistem informatic. Poate fi folosit în diferite moduri în timpul ciclului de dezvoltare software, dar este adesea cel mai util atunci când vine vorba de Remedierea erorilor.

testarea software-ului dvs. după fiecare lansare este foarte frecventă în lumea dezvoltării de software. Cu toate acestea, este posibil să nu fie necesar pentru toată lumea – mai ales dacă lucrați la un proiect mic sau cu baze de cod simple. La urma urmei, în majoritatea cazurilor, este destul de simplu să remediați erorile și să îmbunătățiți caracteristicile existente fără prea mult efort implicat: pur și simplu scrieți noi cazuri de testare care verifică comportamentul corect al funcționalității nou implementate și asigurați-vă că trec!

cu toate acestea, pot exista momente în care unele activități de testare necesită mai mult timp decât scrierea de teste noi (și chiar fixarea acestora mai târziu). Aceste situații includ remedieri de erori efectuate de un membru al echipei care nu este încă familiarizat cu baza de cod sau cu noile caracteristici care necesită testare și documentație extinsă.

Când Trebuie Să Utilizați Retestarea?

deci, cum decidem când este necesară retestarea? În primul rând, depinde de dimensiunea proiectului dvs. (și ce elemente merită testate). De exemplu: dacă aveți o linie de produse mare răspândită pe mai multe produse, atunci retestarea ar trebui să facă parte din procesul dvs. obișnuit, deoarece fiecare lansare poate afecta alte părți ale sistemului în diferite moduri.

de asemenea, luați în considerare faptul că fiecare eroare remediată va duce la crearea de teste suplimentare de către dezvoltatori – ceea ce înseamnă că pot petrece mai mult timp scriind cazuri de testare decât reparând erori. În plus, există situații în care, chiar dacă sunteți încrezător în baza de cod, este totuși necesar să retestați unele părți ale sistemului după fiecare lansare.

de exemplu: noile funcționalități pot introduce inconsecvențe și comportamente neașteptate care pot fi dificil de detectat la început, cu excepția cazului în care devin evidente în timpul testării sau al feedback-ului utilizatorilor (și aceasta ar trebui să fie o parte obișnuită a procesului dvs. de asigurare a calității). De asemenea, luați în considerare cazurile în care automatizarea testelor nu a fost încă implementată – aceste teste vor arăta probleme numai după ce efortul suplimentar este depus pentru a le face să treacă din nou!

în astfel de situații, menținerea scepticismului cu privire la bug – urile nou introduse este o idee bună-de ce ar trebui să avem încredere în Baza noastră de cod dacă s-a dovedit deja că testarea poate fi nesigură?

cele mai bune practici dacă retestați

acum, care sunt cele mai bune practici atunci când decideți dacă să retestați și cum faceți acest lucru?

iată câteva linii directoare:

  • de fiecare dată când comiteți o remediere a erorilor, includeți suficiente informații despre situația în care a fost introdusă problema, astfel încât oamenii să o poată reproduce și retesta. Dacă echipa dvs. de QA are mai mult de o pereche de ochi care lucrează la o problemă, ei pot face adesea acest lucru mai repede decât dezvoltarea (de fapt, nu uitați că dezvoltatorii au propriile responsabilități – cel mai important învățând din greșeli și remediind Erorile). De asemenea, consultați forumurile de asistență în momentele în care se întâmplă mai puține lucruri în ele.
  • când dezvoltați caracteristici noi sau vechi, asigurați-vă că toate testele trec înainte de lansare sunt gata pentru testare de către echipa QA. Dacă nu-cereți echipei dvs. de asigurare a calității să le testeze și să vă asigurați că erorile sunt remediate, rețineți că, deși este posibil să remediați singur un bug (folosind teste automate sau teste manuale), există întotdeauna o șansă de a face greșeli în timp ce faceți acest lucru.
  • când dezvoltați noua versiune a unei caracteristici existente, încercați să includeți cât mai multe teste de regresie în baza de cod – acest lucru va reduce cel puțin riscurile asociate cu remedierea regresiilor cauzate de modificările făcute în timpul dezvoltării altor caracteristici deasupra acesteia.
  • când lansați o versiune beta a produsului, asigurați-vă că este complet funcțional și că toate erorile au fost remediate (acest lucru este deosebit de important pentru corecțiile de erori făcute în timpul dezvoltării sau testării pe lângă această nouă caracteristică).
  • când eliberați versiuni stabile, asigurați-vă că toate erorile au fost remediate. Acest lucru este deosebit de important pentru remedierile de erori făcute în timpul dezvoltării altor funcții în partea de sus a funcției lansate – dacă nu au fost incluse în versiunile corespunzătoare, atunci când oamenii încearcă să utilizeze aceste versiuni noi, pot întâmpina probleme cauzate de aceste modificări. Dacă există încă unele probleme rămase, asigurați-vă că acestea sunt rezolvate cât mai curând posibil.

retestarea vs testarea regresiei

în primul rând, retestarea și testarea regresiei sunt ambele tipuri de validare software pe care puteți alege să le efectuați în timpul procesului de dezvoltare. Totuși, nu sunt la fel: retestarea se face la sfârșitul unei anumite faze de lucru, adesea atunci când aveți un produs funcțional, dar trebuie să vă asigurați că nu este încă plin de erori sau erori de la testarea timpurie. Testarea regresiei este un tip de validare software care se face în diferite puncte de-a lungul procesului de dezvoltare pentru a vă asigura că anumite aspecte ale codului dvs. funcționează corect.

în unele cazuri, retestarea poate fi efectuată pur și simplu prin citirea rezultatelor testelor anterioare sau a rapoartelor și verificarea oricăror probleme despre care știți că au fost rezolvate. Dacă doriți rezultate și mai detaliate, puteți verifica problemele anterioare unul câte unul pentru a vă asigura că au fost îngrijite. Un tester IT ar putea merge chiar până la a testa porțiuni ale software-ului care nu au fost niciodată testate înainte.

în alte situații, testarea regresiei se poate face prin luarea unui plan de testare și rularea acestuia pe fiecare versiune sau actualizare a aplicației dvs., începând cu cea mai recentă. În acest fel, vă puteți asigura că fiecare modificare a aplicației dvs. este testată în mod adecvat.

un cuvânt despre testarea duplicată cu retestare vine posibilitatea testării duplicate. Acest lucru se întâmplă atunci când cineva testează un element al software-ului dvs. și găsește o problemă cu acesta, dar nu se face nimic pentru a-l corecta sau pentru a vă asigura că nu se va mai întâmpla. Pentru a vă asigura că acest lucru nu se întâmplă, puteți crea o bază de date sau o listă de verificare a problemelor din testarea anterioară, astfel încât testerii să o poată utiliza cu ușurință pentru a evita testarea duplicată.

este o idee bună să aveți un anumit tip de documentație pentru fiecare produs software la care lucrați; dacă oamenii testează din nou produse mai vechi, le puteți cere să parcurgă documentația originală și să o actualizeze cu orice modificări pe care le găsesc.

unul dintre cele mai importante aspecte ale retestării este urmărirea problemelor, modul în care au fost găsite și ce s-a făcut pentru a le remedia. Dacă o problemă nu este rezolvată, dar în schimb sunt create noi probleme prin remedierea unei alte probleme, va fi dificil pentru dvs. sau echipa dvs. să știți ce a mers prost.

deși retestarea poate fi consumatoare de timp, este o parte foarte importantă a validării software-ului și este utilă în special atunci când este utilizată împreună cu alte tehnici de testare. Atâta timp cât problemele găsite în timpul retestării sunt rezolvate, puteți continua să efectuați retestarea produselor mai vechi pentru a vă asigura că ultima dvs. lucrare nu a cauzat probleme.