when opt automation testing
Ar trebui să luăm în considerare testarea automatizării unui proiect? Când ar trebui să mergem pentru testarea automatizării?
Testarea se efectuează pentru a oferi livrabile de bună calitate utilizatorului final. Faza de testare este unul dintre principalele aspecte ale STLC .
Orice companie se concentrează mai mult pe testarea software-ului, deoarece calitatea sa aduce satisfacția optimă a clienților, dar multe dintre ele încă se luptă să aleagă ce tip de testare să efectueze, fie cu teste automate, fie cu testări manuale.
Acest articol îl ajută pe cititor să înțeleagă ce este testarea automatizării, când trebuie să merite pentru ea și, cel mai important, când să nu merite pentru ea. De asemenea, învățați utilizarea optimă a Instrumente de automatizare pentru testare .
Indiferent de munca efectuată, aceasta ar trebui să fie efectuată eficient și trebuie să fie și rentabilă. Mai mult, ar trebui să aibă sens, astfel încât clientul să se simtă fericit cu livrabilele.
Ce veți învăța:
- Testarea software-ului și beneficiile costurilor
- Inteligență în spatele testării software
- Automatizarea - Este cu adevărat esențială?
- De ce automatizare?
- Factor de risc
- Când nu trebuie PREFERAT automatizarea?
- Cost vs ROI pentru automatizare
- Unde poate automatiza redarea minimă până la reducerea costurilor?
- Concluzie
- Lectură recomandată
Testarea software-ului și beneficiile costurilor
Testarea software-ului este efectuată în mod normal de un tester de software. Diferența dintre un tester și un utilizator real este că acesta din urmă va cunoaște doar o utilizare parțială a software-ului care este utilizat pentru afacerea lor sau pentru sarcinile lor și nu va cunoaște complet software-ul. Pe de altă parte, un tester va fi la curent cu toate cerințele tehnice și funcționale ale software-ului. Pe baza cerințelor furnizate de client, planurile de testare și cazurile de testare vor trebui pregătite.
Un plan de testare nu este altceva decât un plan detaliat al modului în care urmează să se desfășoare procesul de testare. Aceasta va avea detalii complete despre numărul de resurse și surse implicate în testare, ce să facem și când să o facem, ce nu se va face și mediul în care va fi efectuat etc.
Testele ar trebui pregătite după o înțelegere clară a aspectului funcțional și tehnic al software-ului. Testatorul trebuie să posede o capacitate de observație acută și cunoștințe complete despre software.
Mai mult, costul joacă un rol eficient aici. Clienții preferă să accepte software cu o calitate maximă la un cost minim. Când mergem la testarea manuală, procesul este mai obositor și consumă mult timp, întrucât totul se face manual de către un tester.
De exemplu , când avem nevoie de „n” număr de testeri executați testarea de regresie , poate dura aproape 50 de ore pentru a executa toate cazurile de testare. Și pe baza disponibilității resurselor, cazurile de testare vor fi executate. Dar, cu mai puțin timp pentru testarea automată, se realizează utilizarea optimă a resurselor împreună cu acoperirea maximă a cazurilor de testare în comparație cu testarea manuală.
Inteligență în spatele testării software
Este foarte important pentru orice organizație să știe când să înceapă procesul de testare și când să o părăsească. Ar trebui să știm când să pornim cu testarea, pentru că este inutil să începem testarea când se termină faza de dezvoltare și când nu sunt îndeplinite criteriile cerute. Este întotdeauna o bună practică să începeți cu faza de proiectare a testului în timp ce dezvoltarea este în desfășurare.
Mai jos sunt prezentate criteriile pentru intrarea și ieșirea testării software-ului:
Criterii de intrare
Odată ce documentul de proiectare a fost semnat, planurile de testare trebuie pregătite în faza de planificare. Un plan de testare joacă un rol vital. Hardware-ul necesar trebuie să fie instalat și configurat corect și funcționalitatea hardware-ului trebuie verificată. Cerințele funcționale trebuie să fie clare și aprobate. Codul dezvoltat trebuie să fie testat pe unitate și semnat de dezvoltatori.
Cazurile de testare și datele de testare trebuie pregătite și aprobate. Datele de testare și aplicația ar trebui să fie disponibile. Testatorul trebuie să posede cunoștințe semnificative și suficiente cu privire la cerere. Resursele ar trebui să fie bine instruite în ceea ce privește instrumentele și trebuie clarificate cu toate funcționalitățile necesare.
Testerul trebuie să fie disponibil. Atunci când oricare dintre criterii nu este atins, criteriile de intrare pentru testare sunt reținute.
(Notă: Faceți clic pe orice imagine pentru o vizualizare mărită)
Criterii de ieșire
Doar atunci când cel puțin 95% din cazurile de testare obligatorii sunt blocate cu un rezultat de „trecere”, putem ieși din faza de testare pentru produs. Cu toate acestea, nu este atât de ușor să stabiliți când poate fi oprit testarea software-ului sau dacă mai trebuie executat. Și acest tip de situație apare de obicei, de asemenea.
Principalele criterii sunt prezentate mai jos:
- Când toate erorile sunt remediate.
- Când termenul este atins.
- Când bugetul este epuizat sau epuizat.
- Când toate cazurile de testare sunt trecute.
- Când acordul este semnat.
- Când se face un anumit procent de testare.
- Cand Alfa iar testarea beta se termină.
Criteriile de ieșire pot fi derivate numai pe baza unor factori precum riscul, costul etc. Când s-a realizat testarea cerinței funcționale principale, testarea va fi oprită de obicei și nu caută niciodată erori minore, ceea ce va crea probleme perioade ulterioare.
Exemplu: Software-ul ABC se află într-o fază de proiectare. Construcția de dezvoltare și testare are loc în general în același timp. După ce proiectarea a fost înghețată, începe dezvoltarea software-ului. Finalizarea dezvoltării software-ului, după cum sa convenit, indică criteriile de intrare. Livrabilele de aici provin de la echipa de dezvoltare. Include note de lansare și probleme cunoscute.
După câteva iterații de testare, atunci când nu există opriri majore / blocante / spectacole în așteptarea rezolvării și 95% din testare au dus la o trecere, atunci este denumit criteriu de ieșire.
Automatizarea - Este cu adevărat esențială?
Când trebuie să decidem dacă avem nevoie Tehnica de testare automată sau nu, se pune aici problema resurselor disponibile. Motivele pentru care trebuie să automatizăm sunt verificarea dacă fluxul de date și funcționalitatea dezvoltată funcționează conform așteptărilor fără intervenție manuală sau nu. Este utilizat în principal în locurile în care software-ul va avea modificări sub forma mai multor versiuni / cicluri etc.
lista companiilor care utilizează cloud computing
La sfârșitul dezvoltării fiecărui ciclu, se va face testarea funcționalității adăugate în prezent. În plus, se va face testarea vechii funcționalități pentru a se asigura că vechile funcționalități nu sunt rupte. Aceasta este partea majoră care are domeniul de aplicare pentru automatizare.
Când verificați logica bazată pe cod și cerințele GUI, puteți alege testarea automată, cu condiția ca factorul de risc să fie ridicat.
Exemplu: Pentru software-ul ABC, există actualizări frecvente, actualizările fiind căutate de client și furnizate de dezvoltatori. Prin urmare, ca parte a testării, regresia se face pentru software-ul care este deja live și rulează în producție. Indiferent de orice număr de versiuni, actualizări și actualizări, versiunea actuală va fi valabilă.
Să presupunem că sunt necesare 10 zile de eforturi manuale pentru acoperirea testelor de regresie și că trebuie să se acorde cea mai mare atenție pentru automatizarea acestora. Poate economisi cel puțin 60% efort și 10 * 8 = 80 de ore de lucru manual.
Automarea se poate finaliza 80/24 = 3,33 zile numai. Acest lucru economisește aproximativ 6,67.
De ce automatizare?
Automarea poate fi aleasă numai atunci când:
- Aplicația are o zonă foarte vastă, cu un grad ridicat de efort investitor în regresie.
- Optimizarea costurilor a avut loc din cauza erorilor manuale.
- Software-ul are mai multe versiuni și versiuni.
- Este rentabil pe termen lung.
- Factorul de risc este mai mare pentru un domeniu mai larg de execuție a testului.
- Cifrele costurilor și calculele matematice sunt incluse în funcționalitatea software-ului.
- Există o creștere mai mare a tempo-ului de execuție, a eficienței împreună cu calitatea software-ului.
- Timpul este mai mic, chiar și pentru testarea software-ului cu risc ridicat.
Factor de risc
Factorul de risc devine preponderent comun în afaceri, unde există multe dependențe de factorul timp. Software-ul care funcționează pe baza sistemelor tranzacționale și care funcționează pe mai multe aplicații va necesita ca software-ul să acționeze în mod ideal conform proiectării software-ului. În acest caz, există multe riscuri implicate în înregistrarea comportamentului funcțional corect.
Aici automatizarea va fi foarte utilă în efectuarea tranzacțiilor funcționale într-un ritm mai bun, conform mecanismului software.
De exemplu , în cazul unui indicator al pieței Forex, factorul timp este foarte important și critic. Modificările stocurilor și mărfurilor au loc în raport cu timpul, uneori mai puțin de câteva secunde. Aici automatizarea poate ajuta la testarea unui astfel de software cu risc ridicat.
Exemplu: Software-ul ABC are actualizări și upgrade-uri multiple. Pentru a economisi eforturile manuale și a reduce timpul de rotație pentru faza de testare, versiunea de bază sau vechile funcționalități pot fi automatizate. Acest lucru poate deveni valabil numai atunci când funcționalitățile de bază vor rămâne neschimbate.
Avantajul automatizării este că pot fi rulate fără nicio intervenție manuală. Chiar și acest lucru poate fi realizat în paralel cu testarea funcționalității mai noi. Prin urmare, automatizarea economisește mult efort și mult timp.
Când nu trebuie PREFERAT automatizarea?
Există o întrebare printre mai multe organizații care este - De ce automatizarea 100% nu este posibilă?
Răspunsul experților este NU FACE deoarece utilizatorii calificați sunt obligați să efectueze teste automate și trebuie să fie și bine instruiți. Automatizarea nu poate fi efectuată în etapa inițială a criteriilor și cerințele aplicațiilor nu vor fi clare.
De obicei, automatizarea este preferată de la a doua iterație a oricărei versiuni de software. Interfața cu utilizatorul poate fi modificată, ceea ce este mai costisitor, iar întreținerea scriptului este, de asemenea, mai costisitoare. Când costul necesar pentru instrumentul de automatizare depășește bugetul proiectului, putem spune că nu.
Exemplu: Software-ul XYZ este un tip de site de comerț electronic în care cerințele clientului nu sunt înghețate și se schimbă în permanență atunci când solicită clienții.
Aici, în acest caz, automatizarea nu poate ajuta regresia. Acest lucru se datorează faptului că vechile funcționalități care nu sunt valide nu ar trebui testate și, prin urmare, trebuie făcute manual. De exemplu, un client trebuie să aibă toate casetele de listă din software-ul de bază pentru a fi modificate ca casete drop-down.
Cost vs ROI pentru automatizare
Rentabilitatea investiției este foarte mică atunci când mergem la automatizare inițial, deoarece automatizarea este scumpă pentru prima dată. ROI continuă să crească pe măsură ce efortul manual în testarea software-ului scade de la iterațiile celei de-a doua versiuni. Trebuie să fim conștienți de rezultatul așteptat al oricărui caz de test înainte de Automation.
Luați în considerare proiectarea cazurilor de testare mai importantă atunci când alegeți automatizarea și orice instrument pentru a vă asigura că nu va crește costul.
Unde poate automatiza redarea minimă până la reducerea costurilor?
Chiar și automatizarea costă, deoarece instrumentul necesar pentru testare trebuie achiziționat. Resursele trebuie instruite cu instrumentul respectiv. Instrumentul ales trebuie să fie fezabil pentru a testa toate domeniile software-ului.
Așadar, alegerea instrumentului ar trebui făcută cu atenție de către experții în testarea automatizării.
Exemplu: Luați în considerare produsul XYZ care se ocupă de asigurări. Pentru a reduce factorul de cost, compania a folosit doar testarea manuală, dar atunci când vine vorba de asigurare, factorul de risc este ridicat și poate costa banii fermi atunci când calculul primei nu merge bine. Întreaga pierdere va fi fie pentru conducere sau către utilizatorul final. Utilizatorul final nu va suporta pierderi, în timp ce compania trebuie.
Când suma calculată a primei nu se potrivește cu prima inițială (adică) atunci când există o diferență în calculul primei front-end și back-end, apare o mare problemă între client și vânzătorul produsului. Poate conține multe module, cum ar fi automobile, acasă și altele.
Când ceva nu merge bine, este o pierdere completă. Diferența de calcul poate avea sens pentru tester și poate genera bug-uri. În acest proiect, testarea manuală se poate face pentru UI de bază, cum ar fi verificarea numărului TIN, ID-ului social și a altor informații legate de portofoliul utilizatorilor și, prin urmare, poate fi testat manual acolo unde factorul de risc este scăzut. Lor Cu cât compania ar profita, cu atât preferă automatizarea pentru testarea software-ului lor.
Concluzie
Atât automatizarea, cât și testarea manuală au și avantaje și dezavantaje. Doar atunci când suntem clari despre concepte și cerințe, vom putea alege ce tip de testare să efectuăm.
Niciun proiect nu poate fi testat numai cu testare manuală sau testare automată. Depinde de design, platformă și tehnologia cu care a fost dezvoltat software-ul. Deci, atunci când luați o decizie, trebuie să fiți atenți la alegerea metodei de testare și să folosiți sfatul experților.
În articolul de mai sus, este posibil să fi ratat câțiva factori, împărtășiți cu amabilitate factorii care credeți că sunt importanți în timp ce alegeți automatizarea sau chiar instrumentele pentru automatizare.
Între timp, nu ezitați să împărtășiți comentariile / sugestiile dvs. despre acest articol.
Lectură recomandată
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Provocări de testare manuală și de automatizare
- Top 10+ Cele mai bune cărți de testare software (manuale și cărți de testare automată)
- Testare software Job asistent QA
- Cele mai bune 11 instrumente de automatizare pentru testarea aplicațiilor Android (instrumente de testare a aplicațiilor Android)
- Ești expert în testare manuală sau automatizată? Lucrați cu jumătate de normă pentru noi!
- Curs de testare software: La ce institut de testare software ar trebui să mă alătur?
- Alegerea Testelor software ca carieră