stability testing software testing
Testarea stabilității face parte din testarea performanței. Acest tutorial explică obiectivele, importanța și necesitatea testării stabilității cu exemple:
Testarea stabilității este testarea „nefuncțională”. Aici echipa nu testează caracteristicile și funcționalitățile de bază ale site-ului; dar testează caracteristicile produsului software precum „robustețea”, „gestionarea erorilor”, „fiabilitatea” și stabilitatea produsului ”.
Să luăm în considerare o persoană care achiziționează un produs nou de pe piață ( De exemplu, un telefon mobil). Cumpărătorul se va aștepta ca produsul să funcționeze uniform pentru o lungă perioadă de timp, fără nici un eșec. În mod similar, utilizatorii site-ului și al aplicației mobile se vor aștepta ca site-ul web corespunzător sau aplicațiile mobile să funcționeze cu fiabilitate și stabilitate ridicate.
Acum, luați în considerare cazul utilizatorilor care încearcă să cumpere mărfuri de pe portaluri de comerț electronic. Dacă un număr mare de utilizatori utilizează același portal concomitent, șansele de degradare a performanței pentru site-ul web sunt mari. Utilizatorii pot avea, de asemenea, un timp de răspuns lent sau chiar scurgeri de memorie în timpul sesiunii.
Aceste probleme ridică amenințări atât pentru dezvoltatori, cât și pentru părțile interesate. Este responsabilitatea echipei de testare să găsească aceste probleme și să raporteze echipei de dezvoltare înainte ca aceasta să ajungă la utilizatorii finali. Acest tip de testare va intra sub testarea performanței. Testarea stabilității face parte din testarea performanței.
Ce veți învăța:
Prezentare generală a testelor de stabilitate
După cum s-a menționat mai devreme, testarea stabilității este definită și ca testare „nefuncțională”. Aici, echipele de testare verifică robustețea, gestionarea erorilor, fiabilitatea și stabilitatea produsului.
Acest test este, de asemenea, denumit „Test de rezistență” sau „Test de înmuiere”. Este, de asemenea, cunoscut sub numele de „Testarea sarcinii extreme”.
În acest tip de testare, testerii vor verifica modul în care răspunde portalul online atunci când mulți utilizatori activi utilizează site-ul web concomitent. Testerii trebuie, de asemenea, să verifice răspunsul sistemului într-un astfel de mediu.
De multe ori, site-urile web trebuie să ruleze continuu săptămâni (chiar luni) fără posibilitatea de a reporni serverul. Utilizatorii activi pentru astfel de site-uri web (utilizatorii care utilizează site-ul web în prezent) pot fi extraordinari și fiecare utilizator se va aștepta la o performanță uniformă.
Rolul testerilor este de a oferi încredere dezvoltatorilor și de a asigura utilizatorilor finali că pot utiliza un sistem ca indentat, fără eșecuri sau scurgeri de memorie chiar și în trafic intens. În acest scop, aplicația este supusă unei sarcini maxime (până la punctul de întrerupere a aplicației) și comportamentul sistemului este verificat în astfel de condiții.
Această testare se face de obicei înainte de lansarea software-ului. Testatorii trebuie să se asigure că aplicația este capabilă să gestioneze încărcarea anticipată pe site. Uneori, sistemul se poate prăbuși din cauza unei sarcini grele sau poate deveni lent sau chiar poate prezenta comportamente neașteptate.
Stabilitatea software-ului depinde în mare măsură de performanța perfectă a sistemului în condițiile stresante menționate mai sus. Deci, testarea stabilității joacă un rol foarte important.
Obiectivele testării stabilității
Obiectivele sunt enumerate mai jos:
- Pentru a găsi durabilitatea sistemului.
- Găsiți stabilitatea aplicației și creșteți astfel încrederea dezvoltatorului.
- Găsiți defectul sistemului într-un mediu stresant.
- Evaluarea generală și eficacitatea produsului.
- Pentru a vă asigura că sistemul poate gestiona un program mare.
- Pentru a testa timpul de răspuns al unei aplicații.
- Pentru a verifica conectivitatea bazei de date.
Fapte despre testarea stabilității
Câteva fapte utile sunt prezentate mai jos:
- Testarea stabilității necesită un mediu de testare adecvat.
- Pentru a obține rezultate mai bune, testarea stabilității are nevoie de o abordare bine planificată și structurată.
- Este un proces care consumă mult timp. Timpul necesar procesului de testare poate varia în funcție de cerințele clientului, tipul de produs și politicile companiei.
- Izolarea sistemului este importantă în această formă de testare. În timp ce efectuați testarea stabilității aplicației, există șanse ca datele să se piardă sau să fie corupte definitiv.
- Testarea de anduranță poate provoca defecțiuni ale componentelor aplicației, astfel încât utilizatorii finali pot respecta excepții nesoluționate.
Diferența dintre stabilitate și fiabilitate în sistemul software
Există o diferență substanțială între fiabilitate și stabilitate într-o aplicație software. Acest lucru poate fi explicat cu ajutorul unui exemplu.
Exemplu:
Luați în considerare faptul că un utilizator a instalat o nouă aplicație pe telefonul său mobil și a lansat-o. Dacă aplicația instalată se blochează după fiecare 3 minute de utilizare, cu siguranță îl va enerva pe utilizator. Dar dacă utilizatorul ar putea restabili datele fără nicio pierdere după relansarea aplicației, aplicația nu își va pierde fiabilitatea. O astfel de aplicație poate fi considerată fiabilă, dar nu poate fi considerată stabilă.
c ++ inserare cod sortare
Pe de altă parte, luați scenariul în care datele aplicației nu sunt salvate corect. Aici, aplicația funcționează bine și nu se blochează (ca la fiecare 3 minute). O astfel de aplicație poate fi sau nu poate fi considerată ca fiind de încredere, dar poate fi considerată ca fiind „stabilă”.
Fiabilitatea și stabilitatea sunt ca cele două fețe ale aceleiași monede. Amintiți-vă doar faptul că atât fiabilitatea, cât și stabilitatea sunt importante pentru un produs din perspectiva afacerii.
Exemple de teste de stabilitate:
Este o abordare obișnuită că, atunci când un utilizator achiziționează un nou telefon mobil, el / ea efectuează cu bună știință sau fără să știe, un test de stabilitate. Utilizatorul va salva multe imagini, fotografii, videoclipuri, documente etc. în memoria dispozitivului și va verifica dacă prea multe date stocate au afectat sau nu performanța dispozitivului. Acesta este un exemplu particular de testare a stabilității.
Datorită datelor imense stocate, dispozitivul nostru poate închide uneori, apoi utilizatorul trebuie să șteargă unele date sau să șteargă fișiere temporare pentru ca dispozitivul să recâștige performanța. După această testare, utilizatorul va avea o idee clară despre capacitatea sistemului.
Un alt exemplu în timp real sunt portalurile de achiziții online. În timpul unui sezon de „vânzare / festival”, mulți oameni achiziționează mărfuri de la aceste tipuri de portaluri web. Performanța unui site web trebuie să satisfacă așteptările utilizatorilor.
Deci, testerii trebuie să testeze site-ul, ținând cont de „graba” așteptată, care este probabil să se întâmple în aceste site-uri în acele zile.
Testarea stabilității unei conexiuni la internet
Aici, cazul testului va fi pentru a verifica cât de stabilă este conexiunea noastră la internet. În timp ce stabilesc o conexiune prin internet și solicită pagini web, din cauza pierderii de pachete, utilizatorii trebuie să sufere o latență inconsecventă în vizualizarea paginilor web.
Uneori, pierderea de pachete apare atunci când nu ajunge la destinație. Din cauza pierderii de pachete, este posibil ca mulți dintre noi să fi întâlnit probleme similare în timp ce folosim apeluri video Skype, jucăm jocuri pe internet sau suntem deconectați aleator de internet.
Condiții preliminare pentru testarea conectivității la internet:
- Pentru a testa stabilitatea internetului, trebuie să avem un browser web în care firewall-ul este dezactivat.
- A ales o adresă web ( De exemplu, https://www.google.com/ ) care este puțin probabil să eșueze.
- Utilizați foaia de calcul Google sau Microsoft Excel pentru a înregistra rezultatul, deoarece este ușor de înțeles și mai ușor de citit pentru utilizatori.
- Verificați din nou conectivitatea la internet, dispozitivele și verificați din nou conexiunile. Vom efectua apoi testele menționate mai jos.
Metode utilizate pentru testarea conectivității la internet:
Cel mai bun mod de a testa conectivitatea este să vizitați SpeedTest . (înainte de a citi în continuare vă rugăm să vizitați site-ul). În SpeedTest.net avem o prevedere pentru alegerea serverelor. Alegeți și rulați serverul din apropierea dvs.
După aceea, site-ul va efectua unele calcule pe baza unor algoritmi predefiniți și va afișa raportul care determină imediat calitatea conexiunii noastre la internet. În raport, este inclus procentul de pierdere a pachetelor. Ar trebui să fie „0%”.
Pierderea de pachete „0%” determină stabilitatea ridicată a conexiunii. Orice număr mai mare decât „0” arată că conectivitatea este instabilă.
A doua modalitate este folosirea promptului „cmd” și tastați comanda „ping” (vă rugăm să consultați figura de mai jos). Aici, folosind promptul de comandă putem testa stabilitatea și latența internetului în timp real, de asemenea.
În figură, vă rugăm să verificați secțiunea „Statistici Ping”.
Aici,
Numărul de pachete trimise = 4
Numărul de pachete primite = 4
Numărul de pachete pierdute = 0
Rezultatul arată că conexiunea este foarte stabilă.
Proces utilizat:
Pasul 1: Testatorii vor alege oricare dintre cele două metode explicate mai sus.
Pasul 2: Testerii vor rula procesul și vor înregistra informațiile necesare care sunt obținute ca răspuns la conectivitatea la internet, într-o foaie de calcul.
Pasul 3: Vor repeta procesul de 3 sau de patru ori pe săptămână.
(Deoarece testarea stabilității se face pe o perioadă de timp, testerii vor trebui să programeze procesul de cel puțin două ori pe săptămână.)
Pasul 4: Rezultatele sunt înregistrate în foi de calcul.
Testatorii trebuie să noteze data derulării procesului. Comparați rezultatul obținut la fiecare dată pentru a vă face o idee despre stabilitatea rețelei noastre actuale.
Notă: Punct de întrerupere este starea sistemului la care sistemul se va prăbuși atunci când i se dă o sarcină suplimentară. Acesta definește capacitatea sistemului.
Documentul de specificații este un document dat testerilor de către șeful echipei și va conține detalii despre sarcina anticipată în sistem. În testarea stabilității, testerii vor verifica punctul de întrerupere al sistemului pe baza liniilor directoare furnizate acestora în documentul de specificații.
Echipa de testare va verifica sistemul testând aplicația cu sarcina peste / sub punctul de întrerupere specificat în documentul de specificații. Acest lucru este diferit de cazul testării sarcinii.
cum se adaugă elementul matricei java
În testarea stabilității, vom folosi doar sarcina așteptată pentru testare, dar în testarea sarcinii, o sarcină neașteptată este dată aplicației, iar testerii verifică capacitatea aplicației.
Testarea software-ului Ciclul de viață bazat pe testarea stabilității
Diferitele faze ale Ciclul de viață al testării software-ului sunt înscrise mai jos:
- Analiza cerințelor
- Planul de testare
- Dezvoltarea cazului de testare
- Configurați mediul de testare
- Executarea cazului de testare
- Închiderea testului
Să înțelegem în detaliu toate fazele de mai sus.
# 1) Analiza cerințelor
În această fază, echipa de testare va decide diferitele tipuri de testare care trebuie efectuate în aplicație. Depinde pur și simplu de cerințele clientului și de tipul de aplicație. De exemplu, testerii testează o aplicație bancară, atunci testarea cea mai prioritară, în acest caz, este testarea de securitate. Dacă testerii testează o aplicație imobiliară, aceștia vor acorda prioritate testării funcționale.
# 2) Planificarea testului
În această fază, sunt discutate domeniile de testare. Testerii vor discuta despre necesitatea automatizării. Pentru testarea stabilității, procesele de testare sunt obositoare și trebuie repetate de multe ori pe o anumită durată, automatizarea va fi o alegere bună. „LoadStrom” este un instrument bun pentru efectuarea testelor de stabilitate folosind automatizarea.
În această fază, vom discuta cu clientul bugetul și termenul limită pentru testare. Deoarece testarea consumă mult timp, bugetul și limita de timp ar trebui să respecte planul de testare.
cum se creează o listă dublă legată în java
# 3) Dezvoltarea cazului de testare
Testul pentru testarea aplicației este creat în această fază.
# 4) Mediul de testare
Mediul de testare este un factor vital pentru stabilitatea testării. Avem nevoie de un mediu de testare adecvat, care să fie replica mediului nostru de producție. Mediul original ar trebui să fie neutilizat, deoarece în timpul testării site-ul se poate prăbuși uneori sau chiar pierde date.
# 5) Executarea testului
În această fază, cazurile de testare sunt executate și rezultatele testelor sunt verificate. Aceasta este o fază care necesită mult timp. Problemele generale cu care se confruntă testerii în această fază sunt scurgerile de memorie, probleme legate de conectivitatea datelor, timpul de răspuns lent etc.
# 6) Închiderea testului
În această fază, toți membrii echipei se vor întâlni și vor discuta criteriile de ieșire utilizate în proiect. Criteriile de ieșire depind de factori precum numărul de defecte constatate și timpul folosit la testare.
Instrumente utilizate în testarea stabilității
Sunt utilizate următoarele instrumente:
- LoadRunner
- OpenSTA
- LoadUI
- WebLOAD
- LoadComplete
- Prevedere
- LoadUI
- Rational Performance Tester
Cum se folosește Apache JMeter pentru testarea rezistenței?
Apache JMeter este un instrument bun pentru testarea rezistenței. Înainte de a începe testarea, testerii trebuie să aibă cunoștințe bune despre obiectivele afacerii. După aceea testerii vor crea scripturi de testare. Apoi vom configura setările grupului de fire în JMeter.
În timpul efectuării testelor de anduranță folosind JMeter, trebuie să specificăm următorii factori:
- Numărul de fire: Aceasta indică numărul așteptat de utilizatori de pe site.
- Perioada de rampa: Aceasta indică timpul necesar fiecărui fir pentru finalizare. Dacă avem 5 fire, perioada de creștere este de 50 de secunde.
- Număr de bucle: Aceasta indică de câte ori se repetă procesul. Pentru testele de rezistență, este setat pentru totdeauna.
- Programator: În acest test, vom folosi funcționalitatea de planificare. Trebuie să specificăm configurația planificatorului în funcție de cerință.
Concluzie
Multe aplicații sunt proiectate necorespunzător și nu eliberează memoria dispozitivului după utilizare. Acest lucru va duce treptat la pierderea memoriei. Putem depăși problema cu testarea stabilității. Deci, testarea stabilității este foarte importantă. Este o testare nefuncțională. Se referă doar la caracteristica cererii. Aici, testarea nu se referă la comportamentul sistemului.
Sper că ați înțeles importanța și necesitatea testării de stabilitate.
Lectură recomandată
- Testare software Job asistent QA
- Curs de testare software: La ce institut de testare software ar trebui să mă alătur?
- Testarea software-ului Conținut tehnic Scriitor Freelancer Job
- Alegerea Testelor software ca carieră
- Sfaturi pentru testarea software-ului pentru testatorii începători
- Feedback și recenzii despre cursul de testare software
- Cum să păstrați motivația în viață în testerele de software?
- Ce este testarea maimuțelor în testarea software-ului?