Testarea ad-hoc este de obicei efectuată pentru a sparge sistemul și folosind moduri neconvenționale. Cea mai uimitoare caracteristică a testării Adhoc este că nu are nicio tehnică de proiectare a testelor pentru a crea cazuri de testare.
Procesul este de obicei realizat pentru a găsi lacunele unui software. Deoarece testarea Adhoc nu are cazuri de testare, este adesea realizată fără nicio documentație.
Consultați procesul în detaliu
Testarea Ad-Hoc este o tehnică care se încadrează în categoria „Testare nestructurată”.
- Ce este testarea structurată și nestructurată?
- Testarea structurată
- Testare nestructurată
- Ce este testarea ad-hoc?
- Tipuri de testare ad-hoc
- 1) Testarea în echipă
- 2) Testarea cu maimuțe
- 3) Testarea în perechi
- Caracteristicile testării ad-hoc
- Exemple de teste ad-hoc
- Când să se efectueze testarea ad-hoc
- Care sunt avantajele testării ad-hoc?
- Care sunt dezavantajele testării ad-hoc?
- Cele mai bune practici pentru efectuarea testelor ad-hoc
- 1) Cunoștințe bune de software
- 2) Descoperiți zonele predispuse la erori
- 3) Prioritizarea zonelor de testare
- 4) Planificați în linii mari planul de testare
- 5) Instrumente
Ce este testarea structurată și nestructurată?
Testarea structurată
În această abordare, fiecare activitate care are loc în timpul procedurii de testare, de la crearea cazurilor de testare până la execuția secvențială a acestora, totul este scriptat. Testatorii urmează acest scenariu pentru a efectua testele în conformitate cu acesta.
Testare nestructurată
În această abordare, testarea se face în mod obișnuit prin ghicirea erorilor, în care testatorii creează cazurile de testare, în timpul procesului de testare propriu-zis.
Ce este testarea ad-hoc?
După cum s-a discutat mai sus, este un tip de abordare de testare nestructurată, în care nu se creează un plan organizat înainte de a începe procesul de testare.
Din acest motiv, înainte de testare, nu se realizează documentarea cerințelor sau planificarea și proiectarea cazurilor de testare.
Testarea ad-hoc este, de obicei, efectuată de un tester care are cunoștințe solide despre software-ul testat, în ceea ce privește ceea ce face și cum funcționează.
Această testare se face prin crearea aleatorie de cazuri de testare prin ghicirea erorilor și prin executarea lor, fără a respecta nicio cerință pentru testare.
O parte importantă a acestei testări este de a descoperi zonele potențiale ale software-ului, în care ar putea fi prezente erori.
De aceea este, de asemenea, cunoscută uneori sub numele de Monkey Testing sau Random Testing. Acesta este motivul pentru care este important ca numai acei testeri care au o bună cunoaștere a software-ului să efectueze acest test.
Un avantaj al testării Ad-Hoc este că economisește destul de mult timp, care altfel se duce în crearea de documente, cum ar fi cerințele de testare, planificarea cazurilor de testare, proiectarea etc.
De asemenea, se efectuează, în general, după ce testarea structurată a fost deja efectuată. Acest lucru se face, astfel încât să se descopere defectele neobișnuite ale software-ului care nu au putut fi detectate urmărind cazurile de testare scrise în prealabil.
Tipuri de testare ad-hoc
1) Testarea în echipă
În acest tip de testare ad-hoc, testele sunt efectuate cu efortul echipei de cel puțin două persoane. Această echipă este de obicei formată din cel puțin un tester software și un dezvoltator software.
Acest tip de testare are loc după ce conducerea testării unitare a unui modul este finalizată.
Echipa celor doi „prieteni” lucrează împreună pe acel modul pentru a crea cazuri de testare valide.
Acest lucru se face astfel încât testerul să nu ajungă să raporteze erori generate prin cazuri de testare invalide. Acest tip de testare poate fi considerat, de asemenea, ca fiind o combinație între testarea unitară și testarea de sistem.
2) Testarea cu maimuțe
Aleatoriul abordării folosite în această testare este motivul pentru care este denumită „testare cu maimuțe”.
Aici, software-ul testat este prevăzut cu intrări aleatorii, pentru care se observă ieșirile corespunzătoare acestora.
Pe baza ieșirilor obținute, se determină orice apariție de erori, inconsecvențe sau căderi ale sistemului.
3) Testarea în perechi
Această testare se aseamănă foarte mult cu testarea în pereche. Cu toate acestea, aici, o pereche formată numai din testeri lucrează împreună la modulele de testat.
Ei lucrează împreună pentru a-și împărtăși ideile, opiniile și cunoștințele asupra aceleiași mașini pentru a identifica erorile și defectele.
Testerii sunt împerecheați în funcție de nivelurile lor de cunoștințe și expertiză, pentru a obține o perspectivă diferită asupra oricărei probleme.
Caracteristicile testării ad-hoc
- Această testare se face după ce tehnicile formale de testare au fost deja efectuate asupra software-ului. Motivul pentru aceasta este că testele ad-hoc se fac pentru a descoperi anomaliile din aplicație, care nu pot fi prezise înainte de testare.
- Această testare poate fi efectuată numai de acei testeri care au o bună și temeinică cunoaștere a funcționării aplicației. Acest lucru se datorează faptului că o „ghicire eficientă a erorilor” poate fi realizată numai atunci când testerul știe ce face aplicația și cum funcționează.
- Tehnica de testare Ad-hoc este cea mai potrivită pentru a găsi erori și inconsecvențe care dau naștere la lacune critice într-o aplicație. Astfel de erori sunt, de obicei, foarte greu de descoperit.
- Testarea ad-hoc se efectuează o singură dată, deoarece orice erori care sunt găsite necesită a fi testate din nou.
Această testare durează comparativ mai puțin decât alte tehnici de testare. Acest lucru se datorează faptului că se face fără o planificare, proiectare și structurare prealabilă.
Exemple de teste ad-hoc
- Testarea funcționării corecte a unei aplicații atunci când setările browserului sunt diferite. De exemplu, identificarea erorilor care apar atunci când opțiunea pentru JavaScript este dezactivată în browsere diferite etc.
- Testarea aplicației pe diferite platforme. Este esențial să se verifice dacă aplicația dezvoltată poate rula fluent în diferite sisteme de operare sau browsere.
- Furnizarea de intrări în sistem care se află în afara intervalului valid-inputs, pentru a verifica dacă acțiunea rezultată efectuată de aplicație este adecvată sau nu.
- Parcurgerea unei serii de pași aleatorii sau navigarea aleatorie prin aplicație, astfel încât să se verifice rezultatele obținute prin parcurgerea unei anumite combinații de intrări neobișnuite.
Copierea URL-ului aplicației și manipularea acestuia pentru a fi rulat pe un browser diferit. Acest lucru se face pentru a se asigura că niciun utilizator neautorizat nu este capabil să obțină acces neautentificat la sistem.
Când să se efectueze testarea ad-hoc
De obicei, testarea ad-hoc se efectuează atunci când nu există suficient timp pentru a efectua o testare exhaustivă și amănunțită care include pregătirea documentului privind cerințele de testare, a cazurilor de testare și a modelelor cazurilor de testare.
Momentul perfect pentru a efectua acest tip de testare este după finalizarea tehnicilor formale de testare.
Cu toate acestea, testele ad-hoc pot fi efectuate, de asemenea, în mijlocul dezvoltării software-ului.
Se poate efectua după dezvoltarea completă a software-ului, sau chiar după ce au fost dezvoltate câteva module.
Se poate efectua și în timpul procesului de testare prin metode formale.
Există câteva situații în care, totuși, acest tip de testare nu trebuie efectuat. Prin urmare, fiecare tester trebuie să știe când trebuie să evite această testare.
După cum sunt prezentate mai jos câteva condiții în care testarea ad-hoc nu trebuie să fie efectuată:
- Testarea ad-hoc nu trebuie să fie efectuată atunci când se desfășoară testarea Beta. Acest lucru se datorează faptului că testarea Beta implică clienții, care testează software-ul dezvoltat pentru a oferi sugestii pentru noi caracteristici care trebuie adăugate sau pentru a modifica cerințele pentru acesta.
Se recomandă, de asemenea, ca această testare să nu fie efectuată în cazurile de testare care au deja erori existente în ele. Erorile trebuie mai întâi să fie documentate corespunzător înainte de a fi eliminate din sistem. După ce sunt corectate, cazurile de testare trebuie testate din nou, pentru a se asigura buna lor funcționare.
Care sunt avantajele testării ad-hoc?
- Un avantaj al testării ad-hoc este că multe erori, care de obicei nu sunt detectate atunci când se folosesc numai metode formale de testare, pot fi găsite prin testarea aleatorie a aplicației.
- Testorii au posibilitatea de a explora aplicația în mod liber, în funcție de intuiția și înțelegerea lor asupra aplicației. Ei pot apoi să execute testele pe parcurs, ajutându-i în descoperirea erorilor în timpul acestui proces.
- Testerii, precum și dezvoltatorii aplicației pot testa cu ușurință aplicația, deoarece nu este nevoie de planificarea și proiectarea unor cazuri de testare. Acest lucru îi ajută pe dezvoltatori să genereze cu ușurință coduri mai eficiente și fără erori.
- Acest test poate ajuta, de asemenea, la crearea unor cazuri de testare unice care pot detecta ineficient erorile. Prin urmare, astfel de cazuri de testare pot fi adăugate la testarea formală împreună cu alte cazuri de testare planificate.
- Testarea ad-hoc poate fi efectuată în orice moment în timpul ciclului de viață al dezvoltării software, deoarece nu urmează niciun proces formal.
Poate fi combinat cu alte tehnici de testare și executat pentru a produce rezultate mai informative și mai eficiente.
Care sunt dezavantajele testării ad-hoc?
- Din moment ce procesul de testare nu este documentat și nu este urmat un anumit caz de testare, devine foarte dificil pentru tester să regenereze o eroare. Acest lucru se datorează faptului că testerul trebuie să își amintească pașii exacți pe care i-a urmat pentru a obține acea eroare, ceea ce nu este posibil de fiecare dată. Câteodată, din cauza executării unor cazuri de testare nevalabile dezvoltate la întâmplare de către tester, sunt raportate erori nevalabile, ceea ce devine o problemă în procesele ulterioare de corectare a erorilor. Dacă testerii nu au cunoștințe prealabile despre funcționarea aplicației testate, atunci efectuarea de teste ad-hoc nu va putea descoperi multe erori. Acest lucru se datorează faptului că testerii trebuie să lucreze prin ghicirea erorilor și să creeze și să execute intuitiv cazuri de testare la fața locului.
- Testările ad-hoc nu oferă garanția că vor fi găsite erori. Ghicitul proactiv al erorilor pentru testare depinde în totalitate de îndemânarea și cunoștințele testerului.
- Din moment ce nu există cazuri de testare create și documentate în prealabil, cantitatea de timp și eforturile care se depun în această testare rămân incerte. Uneori, găsirea chiar și a unei singure erori ar putea necesita o cantitate uriașă de timp.
Cele mai bune practici pentru efectuarea testelor ad-hoc
Pentru a efectua în mod eficient tehnica de testare ad-hoc, este important să se cunoască cele mai eficiente și eficace moduri de a face acest lucru.
Aceasta deoarece dacă testele nu sunt efectuate în mod corespunzător, atunci efortul și timpul depus în teste vor fi irosite.
De aceea, pentru a efectua acest tip de testare, trebuie să se cunoască cele mai bune practici care pot ajuta la o abordare mai cuprinzătoare a testării:
1) Cunoștințe bune de software
Asigurați-vă că testerul desemnat pentru testarea aplicației prin abordarea ad-hoc are o bună stăpânire a aplicației.
Testerul trebuie să fie familiarizat cu toate caracteristicile aplicației, astfel încât să faciliteze o mai bună „ghicire a erorilor” asupra aplicației.
Cu suficiente cunoștințe care să susțină procesul de testare al testerului, găsirea mai multor erori, bug-uri și neconcordanțe devine mai ușoară.
2) Descoperiți zonele predispuse la erori
Dacă testerii, cum nu sunt familiarizați cu aplicația, atunci cea mai bună practică pentru ca ei să înceapă procesul de testare este să verifice partea din aplicație în care se află majoritatea erorilor.
Alegerea unor astfel de zone sensibile pentru a efectua teste ad-hoc îi poate ajuta să găsească mai ușor erorile.
3) Prioritizarea zonelor de testare
Este întotdeauna mai bine să se înceapă testarea din zonele aplicației care este cea mai utilizată de către utilizatorii finali sau clienți. Acest lucru ajută la securizarea caracteristicilor importante și la raportarea în prealabil a oricărui bug.
4) Planificați în linii mari planul de testare
Deși testarea ad-hoc nu necesită o planificare sau o documentație prealabilă, se dovedește a fi foarte utilă și eficientă dacă se creează în prealabil un plan aproximativ.
Simplul fapt de a nota indicatorii principali și zonele care necesită testare îi poate ajuta pe testeri să acopere o parte maximă a aplicației într-un timp scurt.
5) Instrumente
Este esențial să se utilizeze tipul potrivit de instrumente, cum ar fi depanatoarele, monitoarele de sarcini și profilerii, pentru a ușura procesul de testare.
Acest lucru se datorează faptului că există momente în care anumite erori și excepții nu pot fi văzute și nu sunt prinse în timpul testării.
Cu toate acestea, utilizarea instrumentelor potrivite poate ajuta la izolarea erorii într-un timp scurt.
Testarea ad-hoc vs testarea exploratorie
Testarea ad-hoc | Testarea exploratorie |
Testerii trebuie să aibă o idee clară despre fluxul de lucru al aplicației | Testerii învață despre aplicația pe parcurs |
Mai multe despre perfecționarea procesului de testare | Este o metodă de învățare pentru a cunoaște aplicația |
O formă de testare pozitivă | O formă de sistem negativă |
Nu există un plan | Se va utiliza un plan bazat pe o cartă |
Nu există o limită de timp propusă | Vectoriul de timp cu casete/caractere |
Poate fi executat de către inginerul de testare software | Trebuie să fie realizate de către expert |
Concentrarea se face pe procesul de aplicare | Zonele de introducere a datelor vor fi principalul obiectiv |
Complexitatea testelor nu va deranja prea mult acest proces | Provocări implicate |
.