Planning For Ad Hoc Testing
În acest articol, am abordat testarea Ad hoc, tipurile sale, avantajele și dezavantajele sale, precum și cele mai bune practici pentru a efectua testarea Ad hoc.
Ce este testarea Ad Hoc?
Testarea Ad hoc, denumită uneori „random testing” sau „monkey testing”, este definită ca un tip de testare informală. Scopul acestui proces este de a sparge sistemul folosind metode neconvenționale. Acest tip de testare software este, în general, neplanificat și nu urmează nicio tehnică specifică de proiectare a testelor pentru a crea cazuri de testare.
Scopul principal al testării ad hoc este de a găsi orice defecte prin verificare aleatorie. Testerul improvizează etapele prin executarea arbitrară a acestora. Acest lucru poate descoperi defecte foarte specifice și interesante, care sunt ușor de ratat atunci când se folosesc alte metode.
Cel mai surprinzător aspect al testării ad hoc este că nu include nicio tehnică de proiectare a testelor. Acest lucru înseamnă că, deși această metodă găsește defecte care nu pot fi găsite de obicei, este mai dificil de reprodus, deoarece nu există cazuri de testare scrise sau documentație.
Succesul testării ad-hoc se reduce într-adevăr la creativitatea și persistența testerului și uneori se datorează doar norocului pur. Tehnica de testare ad hoc se încadrează direct în categoria „testare nestructurată”.
Testare structurată vs. nestructurată
Testare structurată
Această abordare asigură că fiecare activitate care are loc în timpul procedurii de testare este scriptată, de la crearea cazurilor de testare până la execuția secvențială. Testatorul va urma scenariul pentru a efectua cu succes testele.
Testare nestructurată
Această abordare implică testarea prin ghicirea erorilor. Testerul va crea cazuri de testare în timpul procesului de testare.
Tipuri de metode de testare ad-hoc
Buddy Testing
Acest tip de testare ad-hoc se realizează cu un minim de două persoane. Are loc după ce testarea unitară a unui modul a fost efectuată și finalizată. Acest tip de testare poate fi considerat, de asemenea, o combinație între testarea de sistem și testarea unitară.
Scopul principal este ca doi „buddies” să lucreze în același timp la identificarea defectelor sau a erorilor din același modul. Această echipă va fi formată, în general, dintr-un dezvoltator de software și un tester de software.
Cei doi ‘amici’ lucrează împreună la acel modul pentru a crea cazuri de testare valide. Acest proces se asigură că testerul nu raportează erorile pe care le-ar fi putut genera cazurile de testare nevalabile.
Testarea de tip „buddy” s-a dovedit a fi un succes, deoarece ajută testerul să dezvolte cazuri de testare mai bune și permite echipei de dezvoltare să facă modificări de proiectare cât mai devreme posibil.
Testarea cu maimuțe
Datorită naturii aleatorii a testării, această metodă și-a câștigat numele de „testare cu maimuțe”. Monkey testing se face cel mai frecvent la nivelul testării unitare. Aici, testerii testează la întâmplare aplicația sau produsul fără cazuri de testare. Scopul principal al testerului este de a analiza datele sau testele în moduri complet aleatorii, asigurându-se că sistemul este capabil să reziste la orice accident.
Testerii furnizează software-ului intrări aleatorii și observă ieșirile corespunzătoare acestora. Pe baza datelor de ieșire, ei pot determina mai bine orice erori, inconsecvențe sau prăbușiri ale sistemului.
Testarea în pereche
Similară cu „buddy testing” în unele privințe, „testarea în pereche” implică o pereche de testeri care lucrează împreună la modulele pentru testare. Cei doi testeri își vor împărtăși ideile, cunoștințele și opiniile asupra aceleiași mașini pentru a identifica defectele sau erorile.
Această metodă de testare implică utilizarea de testeri care sunt împerecheați în funcție de nivelurile lor de expertiză și cunoștințe, permițând perspective diferite pentru orice problemă pe care o identifică. Cei doi testeri vor împărți aceeași configurație, împărțind, de asemenea, munca de testare și documentarea tuturor observațiilor între ei. Această metodă de testare permite, de asemenea, ca un tester să execute testele, în timp ce celălalt poate lua notițe cu privire la constatări.
Citește și:
De asemenea, citiți: Utilizați testarea în perechi pentru o mai bună testare de acceptare
Testarea în pereche vs. testarea în pereche
Principala diferență între testarea în pereche și testarea în pereche este că testarea în pereche este o combinație între testarea unitară și testarea de sistem. O altă diferență esențială este că buddy testing este executat de către dezvoltatori și testeri împreună. Testarea în perechi, însă, este efectuată numai de către testeri care au niveluri diferite de cunoștințe.
Când și când să nu se efectueze testarea ad-hoc
Testarea ad-hoc se efectuează de obicei atunci când există o lipsă de timp pentru a efectua procese de testare mai lungi și mai exhaustive. Metoda de testare mai exhaustivă include pregătirea documentelor privind cerințele de testare, a cazurilor de testare și a modelelor de cazuri de testare.
Momentul ideal pentru a efectua testarea ad hoc este după finalizarea tuturor tehnicilor formale de testare. Cu toate acestea, testarea ad hoc poate fi, de asemenea, efectuată în mijlocul dezvoltării software, după dezvoltarea completă a software-ului sau după ce câteva module au fost deja dezvoltate.
Este important să se țină cont de cele câteva scenarii în care testarea ad hoc nu este recomandată. Câteva condiții în care testarea ad-hoc nu ar trebui efectuată includ:
Când se efectuează testarea Beta
În cazuri de testare care au deja erori existente
Avantajele testării ad-hoc
Unul dintre principalele avantaje ale testării ad-hoc este acela că este capabil să identifice orice erori care, de obicei, ar trece neobservate în timpul metodelor formale de testare. Acest lucru poate economisi mult timp, deoarece nu necesită niciuna dintre planificările pe care le necesită testarea structurată.
Un alt avantaj este că testerii au posibilitatea de a explora aplicația în mod liber, în funcție de propriile cunoștințe și înțelegere a aplicației. Ei pot apoi să execute diverse teste pe parcurs, ajutând la identificarea erorilor pe tot parcursul procesului.
În al treilea rând, testerii și dezvoltatorii aplicației pot testa cu ușurință aplicația ei înșiși, deoarece nu necesită cazuri de testare. Acest lucru le permite dezvoltatorilor să creeze cu ușurință un cod mai eficient și fără erori.
Testarea ad-hoc poate fi, de asemenea, combinată cu alte tehnici de testare și executată ulterior pentru a produce rezultate mai eficiente și mai informative în general.
Dezavantajele testării ad-hoc
Unul dintre principalele dezavantaje ale testării ad-hoc este faptul că procesul de testare propriu-zis nu este documentat, deoarece nu urmează un anumit caz de testare. Acest lucru face ca testele să fie mai dificil de regenerat o eroare. Deoarece, pentru a obține acea eroare, testerul va trebui să își amintească pașii exacți pe care i-a urmat pentru a ajunge acolo, ceea ce nu este întotdeauna posibil.
Ocazional, ca urmare a cazurilor de testare nevalabile care sunt dezvoltate de tester, sunt raportate erori nevalabile. Acest lucru poate deveni o problemă în următoarele procese de remediere a erorilor. Dacă testerul nu are cunoștințe prealabile despre funcționalitatea aplicației testate, testarea ad-hoc nu va fi utilă și nu va putea identifica erorile.
De asemenea, testarea ad-hoc nu garantează că toate erorile vor fi găsite. Succesul testării ad hoc se bazează pe abilitățile și cunoștințele testerului. Deoarece nu există cazuri de testare create sau documentate în prealabil, cantitatea de timp, efort și resurse care intră în aceste teste rămâne nespecificată. Găsirea unei erori ar putea dura de la câteva minute până la câteva ore sau mai mult.
Bune practici la efectuarea testelor
Testele care nu sunt efectuate în mod corect pot cauza pierderi inutile de timp. Ținând cont de acest lucru, este esențial să știm cum să optimizăm procesul pentru a efectua eficient teste ad-hoc de succes.
Cele mai bune practici de mai jos vor asigura că timpul petrecut în cadrul procesului este cheltuit cu înțelepciune, cu cele mai mari șanse de a obține rezultatele dorite.
Fiți familiarizați cu software-ul
Este imperativ ca testerul care efectuează testele ad-hoc să aibă cunoștințe solide și să dețină cunoștințe despre aplicație. Este important ca testerul să fie familiarizat cu toate caracteristicile principale ale aplicației pentru a asigura o mai bună „ghicire a erorilor”. Cu cunoștințele potrivite, testerul va putea găsi mai multe bug-uri, erori și neconcordanțe generale.
Identificați zonele susceptibile de a avea erori
Dacă testerii nu sunt familiarizați cu aplicația, atunci este recomandat ca aceștia să identifice zonele predispuse la erori ale aplicațiilor și să înceapă de acolo. Selectarea zonelor sensibile pentru a efectua teste ad-hoc le va permite tesatorilor să găsească erorile cu mai multă ușurință.
Prioritizați zonele pe care utilizatorul final le accesează cel mai ușor
Începeți prin a testa zonele aplicației care sunt cele mai utilizate de către clienți și utilizatorii finali. Procedând astfel, aceștia vor evalua mai întâi caracteristicile importante, ceea ce le va permite să raporteze în prealabil orice bug-uri.
Formulați în mod vag planul de testare
În timp ce testarea ad-hoc nu necesită o planificare sau o documentație prealabilă, este util să faceți o planificare aproximativă în prealabil. Notarea principalelor domenii care necesită testare îl va ajuta pe tester să acopere cât mai mult posibil în cel mai scurt timp.
Creșteți eficiența cu instrumentele potrivite
Este esențial să folosiți instrumentele potrivite, cum ar fi monitoarele de sarcini, depanatoarele și profilerii, pentru a vă asigura că procesul se desfășoară eficient. Acestea completează capacitatea testeriștilor de a izola erorile, deoarece pot exista cazuri în care excepțiile nu sunt identificate în timpul testării.
Concluzie
Testarea ad-hoc nu necesită o planificare elaborată, documentație și modele de cazuri de testare. În schimb, economisește timp datorită naturii sale ad-hoc și prin selectarea unor testeri care sunt creativi și care au cunoștințe prealabile despre funcționalitatea aplicației. Această testare poate ajuta la găsirea mai multor defecte decât testarea planificată.
Alăturați-vă celor peste 60.000 de abonați
Pentru cele mai recente bloguri, actualizări din industrie și sfaturi exclusive.
*E-mailul dvs. este în siguranță cu noi, de asemenea, urâm spam-ul
.
Leave a Reply