Ce este testarea volumului? Învață cu exemple
⚡ Rezumat inteligent
Testarea volumului supune o aplicație unei cantități foarte mari de date pentru a vedea cum se comportă stocarea, interogările și timpii de răspuns pe măsură ce baza de date crește. Se mai numește și testare de tip flood testing și scalează datele mai degrabă decât numărul de utilizatori.
Ce este testarea volumului?
Testarea volumului este un tip de testare software, în care software-ul este supus unui volum uriaș de date. Este denumit și ca testarea la inundații. Testarea volumului se face pentru a analiza performanța sistemului prin creșterea volumului de date din baza de date.
Cu ajutorul testării volumului, impactul asupra timpului de răspuns și comportamentului sistemului poate fi studiat atunci când este expus la un volum mare de date.
De exemplu, un serviciu de streaming muzical ar putea fi testat cu un catalog de 50 de milioane tracks și un tabel cu istoricul ascultărilor care conține miliarde de rânduri, pentru a vedea dacă interogările de căutare și recomandare returnează în continuare rezultate într-un timp acceptabil.
Rețineți distincția: testarea volumului crește cantitatea de date sistemul se menține. Creșterea numărul de utilizatori simultani este testarea la sarcină, care este un test diferit cu un obiectiv diferit.
Beneficiile testării volumului
- Identificarea din timp a problemelor de capacitate evită costul mult mai mare al remedierii lor în producție
- Ajută la o pornire mai rapidă a planurilor de scalabilitate
- Identificarea precoce a blocajelor
- Acesta asigură că sistemul dumneavoastră este acum capabil să fie utilizat în lumea reală
De ce se face testarea volumului?
Obiectivul efectuării testării volumului este de a
- Verificați performanța sistemului cu volume crescânde de date din baza de date
- Identificați problemele care pot apărea odată ce setul de date devine mare
- Pentru a afla punctul în care stabilitatea sistemului se degradează
- Testarea volumului va ajuta la identificarea capacității sistemului sau a aplicației – volum normal și mare
Cum se face testarea volumului
În testarea volumului, următoarele lucruri trebuie testate
- Testați pentru a verifica dacă există pierderi de date
- Verificați timpul de răspuns al sistemului
- Verificați dacă datele sunt stocate corect sau nu
- Verificați dacă datele sunt suprascrise fără nicio notificare
- Verificați dacă avertismentele și mesajele de eroare apar efectiv atunci când se atinge o limită de volum
- Verificați dacă datele de volum mare afectează viteza de procesare
- Confirmați că sistemul are resursele de memorie și stocare necesare volumului
- Confirmați că testul de volum acoperă întregul sistem și nu o singură componentă
- Există vreun risc dacă volumul de date este mai mare decât cel specificat
- Stabiliți dacă există vreo garanție că volumul de date nu va depăși maximul specificat
Cele mai bune practici pentru testarea volumului mare
Mai multe dintre practicile de mai jos sunt comune cu testarea la sarcină, deoarece cele două sunt de obicei executate în același mediu. Cele specifice volumului se referă la setul de date în sine:
- Opriți toate serverele și verificați toate jurnalele
- Înainte de testul de încărcare, executați manual scenariul aplicației
- Pentru cele mai utile rezultate, eșalonați numărul de utilizatori
- Pentru a depăși constrângerile de licență, echilibrați timpul de gândire
- Fiți precauți cu noua construcție
- Analizați cazul de utilizare pentru îmbunătățire odată ce a fost stabilită o valoare de referință
- O repetare a anumitor părți ale testării volumului devine inevitabilă în cazul în care există un blocaj de performanță
Testarea volumului vs. testarea încărcării
| Testarea volumului | Încărcarea testelor |
|---|---|
|
|
|
|
Provocări în testarea volumului
- Fragmentarea memoriei greu de generat
- Generarea dinamică de chei
- Relațional Integrity a datelor generate
Cum se compară acest test cu alte teste de performanță
Testarea performanței este o familie de teste care diferă prin forma sarcinii aplicate, motiv pentru care sunt atât de ușor de confundat.
| Tipul testului | Ce este crescut | Întrebare îi răspunde |
|---|---|---|
| Testare de sarcină | Utilizatori concurenți, până la vârful așteptat | Îndeplinește obiectivele în condiții normale de trafic de vârf? |
| Testarea volumului | Datele păstrate în baza de date | Se descurcă pe măsură ce setul de date crește? |
| Testare stresanta | Încărcare peste capacitate, până la defectare | Unde se rupe și cum? |
| Testarea vârfurilor | Încărcați, instantaneu și extrem de | Supraviețuiește și își revine după un șoc? |
| Testare de anduranță | Durată, la sarcină normală | Se degradează performanța în timp? |
| Testarea prin imersie | Durată, resurse de urmărire | Există scurgeri de memorie sau de handle? |
| Testare de stabilitate | Condiții variate | Rămâne fiabil pe măsură ce condițiile se schimbă? |
Distincția care contează cel mai mult aici: Testarea volumului scalează datele, testarea încărcării scalează utilizatorii. Un raport care rulează în două secunde pentru zece mii de rânduri și în două minute pentru zece milioane de rânduri are o problemă de volum, nu o problemă de încărcare, și nicio capacitate suplimentară a serverului nu o va rezolva.
Cum se generează date de testare pentru testarea volumului
Secțiunea privind provocările menționează că generarea de date realiste este partea dificilă a testării volumului. În practică se utilizează patru abordări, fiecare implicând un compromis.
| Abordarea | Realism | Principalul dezavantaj |
|---|---|---|
| Copie a datelor de producție | Nivel | Expunerea la confidențialitate și conformitate |
| Copie de producție mascată | Înalt | Mascarea poate încălca integritatea referențială |
| Generare sintetică | Mediu | Distribuțiile pot să nu corespundă realității |
| Trafic de producție reluat | Înalt | Necesită infrastructură de captare |
Indiferent de calea pe care o alegeți, trebuie să fie respectate trei proprietăți, altfel testul nu va măsura nimic util.
- Integritate referențială. Fiecare cheie externă trebuie rezolvată. Un milion de rânduri orfane exercită motorul de stocare, dar niciodată căile de joncțiune pe care aplicația le folosește de fapt.
- Cardinalitate realistă. Dacă tabelul de producție are zece milioane de rânduri pe două sute de clienți, generarea a zece milioane de rânduri pe zece milioane de clienți produce planuri de interogare complet diferite.
- Distribuție realistă. Datele reale sunt distorsionate. Datele uniform aleatorii ascund partițiile active și conflictele de indecși care cauzează incidente de producție.
Un avertisment practic despre confidențialitate. Copierea datelor de producție într-un mediu de testare este cea mai frecventă cauză a unei încălcări de date în testare. Mascați câmpurile personale înainte ca copia să părăsească producția, nu ulterior.

