soak testing tutorial what is soak testing
Acest ghid cuprinzător privind testarea prin absorbție explică ce este testarea prin absorbție, de ce avem nevoie de ea, aplicația sa, avantaje, cele mai bune practici și dezavantaje:
În timpul testării unei aplicații software trebuie efectuate diferite tipuri de testare. Testarea funcțională și nefuncțională sunt cele două mari categorii în care putem clasifica tipurile de testare.
Testarea funcțională, așa cum sugerează și numele, se referă la testarea funcționalității aplicației. Testarea nefuncțională, pe de altă parte, acoperă toate celelalte testări (utilizare, performanță etc.), altele decât testarea funcțională.
Ce veți învăța:
Testarea înmuiere - Un ghid complet
Acest tutorial vă prezintă conceptele de testare Soak, care este un tip de testare a performanței.
După cum se vede în imaginea de mai sus, putem spune că testarea Soak este un tip de testare nefuncțională.
Ce este testarea înmuiere
Este un tip de testare a performanței pentru a verifica dacă o aplicație sub test (AUT) poate rezista la sarcină continuă pentru un interval de timp prestabilit. Acesta este un tip de testare nefuncțional. Este, de asemenea, denumit ca „Testarea rezistenței” sau „Testarea longevității” .
Dacă mergeți după numele său literal, atunci cuvântul „înmuia” deține în sine semnificația a ceea ce intenționează să facă această testare. Astfel, supunerea unei cereri pentru o anumită perioadă la o sarcină mare este ceea ce înseamnă această testare.
Ne putem întreba, care ar putea fi diferența dacă o aplicație este supusă încărcării timp de o oră sau poate de 20 de ore. Dar da, are o semnificație.
Acest lucru poate fi explicat mai bine cu un scenariu din lumea reală. Dacă o frânghie este trasă de ambele capete de către doi oameni pentru o perioadă de timp, atunci ar putea rezista doar la presiune, totuși, dacă aceeași este continuată zile întregi, atunci frânghia s-ar putea rupe cedând la presiunea de la ambele capete.
(imagine sursă )
La fel este cazul software-ului. Când supunem o aplicație la o încărcare mare (câteva sute sau mii de utilizatori), atunci poate funcționa bine timp de o oră. Cu toate acestea, atunci când aceeași aplicație este supusă sarcinii timp de 20 de ore, se poate prăbuși cu totul.
(imagine sursă )
Traficul intens continuu pe o perioadă lungă de timp poate provoca probleme diferite în aplicație. Astfel, apare necesitatea testării Soak.
În cadrul acestei testări, conceptul de bază este de a încărca aplicația cu utilizatorii așteptați, dar pentru o perioadă prelungită. Acest lucru ajută la identificarea diferitelor probleme de bază care altfel ar rămâne nedetectate până la apariția scenariului real în aplicația live.
Nevoia de testare la înmuiere
Pentru a înțelege nevoia, trebuie să fim, de asemenea, conștienți de posibilele probleme prin care ar putea trece o aplicație în cazul în care se confruntă cu o încărcătură mare pe o perioadă lungă de timp.
Să analizăm diferitele motive care fac necesare testarea Soak.
# 1) Este necesar în principal pentru a identifica probleme cum ar fi gestionarea incorectă a memoriei, probleme de conexiune la baza de date, degradarea timpului de răspuns al aplicației etc.
Fiecare dintre aceste probleme a fost explicată mai jos:
- Gestionarea incorectă a memoriei poate implica probleme precum o memorie alocată pentru utilizare, dar care nu este eliberată niciodată sau când resursele utilizează mai multă memorie decât este necesară. Atunci când astfel de scenarii continuă o perioadă lungă de timp, atunci ar putea duce la lipsa de memorie a sistemului, rezultând ca o aplicație să nu mai răspundă.
- Probleme de conexiune la baza de date - Eroarea apărută la închiderea unei conexiuni la baza de date poate duce, pe termen lung, la blocarea completă a aplicației.
- Timp de răspuns al aplicației degradant - Uneori o aplicație, dintr-un anumit motiv, poate deveni mai puțin eficientă și timpul de răspuns al acesteia ar putea crește. De-a lungul timpului, acest lucru poate determina aplicarea să nu mai răspundă.
Pentru a evita apariția unor astfel de situații, am prefera să testăm aplicația noastră. Ajută la identificarea unor astfel de probleme de bază care altfel ar putea rămâne nedetectate.
#Două) Testul de înmuiere ajută la determinarea dacă aplicația noastră este gata să preia sarcina pentru o perioadă susținută.
aruncă caractere în șir c ++
# 3) Permite echipei să ia măsuri corective în funcție de modul în care sistemul răspunde la testele Soak.
Când începeți testul de înmuiere?
(imagine sursă )
În mod ideal vorbind, ca orice altă testare a performanței, această testare ar trebui făcută în timpul dezvoltării produsului împreună cu testarea funcțională. Cu toate acestea, acest lucru se face rar. Motivul este evident, adică gestionarea costului proiectului.
Astfel, accentul constă în principal în testarea funcțională și toate formele de testare a performanței primesc în general un loc din spate și sunt luate aproape de data lansării aplicației.
În general, testarea Soak este preluată chiar înainte ca aplicația să fie lansată clientului. Dar acest lucru are un mare dezavantaj legat de soluționarea problemei.
Când se constată o problemă de performanță într-o etapă ulterioară, poate fi dificil să o rezolvați, deoarece aceasta ar putea implica o modificare majoră a codului care ar putea să nu fie posibilă având în vedere apropierea datei de livrare a aplicației.
Astfel, este întotdeauna recomandabil ca aceste teste să fie efectuate la timp, astfel încât problemele identificate să poată fi abordate.
Strategia de testare a înmuierii
(imagine sursă )
Așa cum este pregătită o strategie de testare pentru testarea unei aplicații, o strategie este pregătită în prealabil pentru a efectua testarea Soak, iar acest lucru este foarte necesar.
ce este un site de partajare de fișiere
Să aruncăm o privire la ceea ce intră în pregătirea strategiei de testare a înmuierii.
Înainte de a începe testul de înmuiere, echipa trebuie să stabilească sarcina pentru care aplicația trebuie să fie testată în înmuiere. Durata pentru care trebuie testată trebuie, de asemenea, să fie predeterminată. În general, acest lucru este asigurat de echipa de dezvoltare.
Echipa de testare ar trebui să decidă scenariile pe care le planifică pentru testul de înmuiere. Acest lucru ar depinde, la rândul său, de angajamentul și cerința Clientului pentru cererea sub testare.
Deoarece testarea Soak se concentrează în principal pe identificarea problemelor de memorie și scurgeri de resurse, este important să cunoașteți în prealabil consumul de memorie și baza de date în raport cu cele disponibile.
Ar trebui, de asemenea, să se decidă detaliile mediului, cum ar fi sistemul de operare, dispozitivul etc. pe care ar fi efectuate testele Soak.
Nu în ultimul rând, trebuie luate în considerare și riscurile implicate. Ar trebui întotdeauna să se facă un plan de rezervă pentru astfel de situații. De exemplu, dacă baza de date se blochează în timpul testării, atunci ce alte alternative sunt disponibile în locul ei și așa mai departe.
Scenarii pentru testarea înmuiere
Atunci când un site de comerț electronic anunță o vânzare online a produselor sale, atunci este firesc ca site-ul web să fie încărcat în perioada de vânzare care ar putea dura 3-5 zile. Într-o astfel de situație, site-ul web ar trebui să fie testat cu Soak pentru a evita orice accident neașteptat.
În timpul închiderii unui exercițiu financiar, un site web al băncii poate fi nevoit să facă față unei sarcini foarte mari pentru o perioadă continuă. Într-o astfel de situație, site-ul web trebuie să fi fost testat pentru a evita orice blocare neașteptată a aplicației web.
Atunci când o aplicație este concepută pentru a gestiona o sarcină predeterminată pentru o perioadă predeterminată continuă, atunci devine necesar să testați cererea pentru o sarcină de cel puțin 2 ori capacitatea sa cunoscută de manipulare a sarcinii.
De exemplu, dacă se știe că un site web gestionează o încărcare de 500 de utilizatori pentru o perioadă continuă de 15 ore, atunci aplicația ar trebui să fie testată și Soak pentru 1000 de utilizatori timp de 15 ore. Acest lucru ne-ar ajuta să știm dacă aplicația va răspunde anormal atunci când este forțată să își dubleze capacitatea de încărcare.
Cele mai bune practici
(imagine sursă )
- Testarea prin înmuiere ar trebui să fie întotdeauna făcută cunoscând limita de încărcare inactivă a aplicației, atât în ceea ce privește utilizatorii, cât și durata de timp. Acest lucru este necesar pentru a fi cunoscut, deoarece ținta este de a încărca aplicația cu utilizatorii așteptați, dar pe o perioadă lungă de timp.
- Este recomandabil să efectuați teste Soak pe timp de noapte sau dacă trebuie să faceți teste chiar și mai lungi, atunci este recomandabil să faceți acest lucru în weekend. Motivul este evident, adică în timpul orelor de lucru, resursele se leagă, în timp ce noaptea sau în afara orelor de lucru, serverele de testare pot fi disponibile pentru a fi utilizate pe durate lungi. Astfel, programul non-lucru este momentul ideal pentru astfel de teste.
- Riscurile asociate atunci când testează Soak o aplicație ar trebui întotdeauna analizate și un plan de atenuare ar trebui să fie pregătit pentru același incident.
Îmbibăți constrângerile de testare
(imagine sursă )
- Durata lungă necesară pentru testarea unei aplicații este o mare constrângere, în general din cauza indisponibilității timpului. Astfel, testarea la înmuiere poate fi uneori evitată din cauza lipsei de timp.
- Mediul de testare trebuie selectat cu atenție, astfel încât orice alt tip de testare care se efectuează pe aplicație să nu fie afectat. Acest lucru se poate întâmpla, deoarece testarea aplicației pentru sarcini mari pe termen lung ar putea duce la probleme.
- Timpul pentru testarea Soak trebuie să fie decis cu atenție și ar trebui să fie în principal orele în afara orelor de muncă (cum ar fi un weekend sau ore de noapte după închiderea locului de muncă).
- În general, instrumentele de automatizare sunt necesare pentru testarea Soak, deoarece testele trebuie efectuate pe perioade lungi de timp cu un număr mare de utilizatori.
Dezavantaje ale testării la înmuiere
- Termenele proiectului pot fi afectate din cauza testării Soak, deoarece timpul necesar pentru același lucru este, în general, ridicat.
- Resursele sunt legate pentru durata testării, deoarece există o utilizare mare a memoriei datorită unui număr mare de utilizatori care accesează aplicația.
Concluzie
Prin acest tutorial, am aflat ce este testarea Soak și ce face necesară efectuarea acestui test.
Acum, cu această înțelegere a ceea ce este Testarea Soak și ce fel de probleme ajută la identificare, putem înțelege foarte bine nevoia de a efectua același lucru. Mai ales în vremurile în care întreaga lume este întotdeauna conectată, acest test devine o necesitate.
Am văzut când ar trebui să începem să testăm testul împreună cu abordarea care ar trebui urmată. Scenarii, cele mai bune practici și constrângerile asociate cu acestea au fost, de asemenea, discutate aici.
Sperăm că acest tutorial v-a ajutat să înțelegeți ce este testarea Soak și trebuie să vă fi îmbunătățit cunoștințele.
Lectură recomandată
- Testarea încărcării cu tutoriale HP LoadRunner
- Tutorial de testare distructivă și testare nedistructivă
- Descărcare eBook Descărcare Primer
- Corelație - Testarea încărcării cu LoadRunner
- Testarea funcțională Vs testarea non-funcțională
- Diferența dintre Desktop, Client Server Testing și Web Testing
- Testarea încărcării folosind LoadUI - Un instrument de testare a încărcării gratuit și open source
- Tutorial de testare SOA: metodologie de testare pentru un model de arhitectură SOA