complete performance testing guide with examples
Ce este testarea performanței?
Testarea performanței este, de asemenea, cunoscută sub numele de „Testarea perfecțiunilor”, este un tip de testare efectuată pentru a verifica modul în care aplicația sau software-ul funcționează sub sarcină de lucru în ceea ce privește capacitatea de reacție și stabilitatea. Scopul Testului de performanță este identificarea și eliminarea blocajelor de performanță dintr-o aplicație.
Acest test se efectuează în principal pentru a verifica dacă software-ul îndeplinește cerințele așteptate pentru viteza, scalabilitatea și stabilitatea aplicației.
instrument de reparare a erorilor Windows Windows 10
În această serie de tutoriale, vom acoperi detalii complete, cum ar fi - Tipuri de testare a perfecționării, proces și scriere a documentului privind strategia de testare a performanței de la zero.
Aceasta este o serie de tutoriale detaliate pe care poate doriți să le marcați!
Să explorăm!
Lista TUTURELOR Tutoriale de testare a performanței din această serie:
Tutorial nr. 1: Ghid complet de testare a performanței (Acest tutorial)
Tutorial nr. 2: Diferența dintre testarea performanței, sarcinii și a stresului
Tutorial nr. 3: Testarea funcțională vs. Testarea performanței
Tutorial # 4: Planul de testare a performanței și strategia de testare
Tutorial # 5: Modalități de a vă supraîncărca testarea performanței
Tutorial nr. 6: Ghid de testare a performanței în cloud
Tutorial nr. 7: Ghid de testare a performanței aplicațiilor mobile
Tutorial # 8: Cum se efectuează testarea manuală a performanței
Tutorial # 9: Tutorial de testare a performanței site-ului web
Tutorial # 10: Companii de testare a performanței
Tutorial # 11: Testarea performanței cu LoadRunner (Serie)
Instrumente:
Tutorial # 12: Instrumente de testare de performanță
Tutorial # 13: Tutorial Neoload Performance Test
Tutorial # 14: BlazeMeter Mobile Performance Test Tutorial
Tutorial # 15: Tutorial WAPT de încărcare, stres și performanță
Tutorial # 16: Tutorial de testare a performanței site-ului SmartMeter.io
Ce veți învăța:
- Tipuri de testare a performanței
- Procesul de testare a performanței
- Cum se scrie un document de strategie de testare a performanței?
- Eșantion de șablon de strategie de testare a performanței
- #1. Introducere
- # 2) Domeniul de aplicare
- # 3) Abordare
- # 4) Date de testare
- # 5) Criterii de intrare și ieșire
- # 6) Gestionarea defectelor
- # 7) Instrumente și tehnici de testare
- # 8) Criterii de suspendare și reluare
- # 9) Testați livrabilele
- # 10) Roluri și responsabilități
- # 11) Riscuri potențiale și plan de atenuare
- # 12) Ipoteze
- # 13) Dependențe
- # 14) Abrevieri
- Cele mai bune practici pentru testarea realistă a performanței
Tipuri de testare a performanței
Testarea sarcinii
Testarea încărcării este un tip de test de performanță în care aplicația este testată pentru performanța sa la utilizarea normală și la vârf. Performanța unei aplicații este verificată în funcție de răspunsul acesteia la cererea utilizatorului și de capacitatea sa de a răspunde în mod constant în cadrul unei toleranțe acceptate la diferite încărcări ale utilizatorilor.
Considerentele cheie sunt:
- Care este sarcina maximă pe care aplicația o poate suporta înainte ca aplicația să se comporte în mod neașteptat?
- Cât de multe date pot gestiona baza de date înainte ca sistemul să încetinească sau să se observe accidentul?
- Există probleme legate de rețea care trebuie soluționate?
Testare stresanta
Testarea stresului este utilizată pentru a găsi modalități de a sparge sistemul. Testul oferă, de asemenea, gama de sarcini maxime pe care sistemul o poate suporta.
În general, testarea la stres are o abordare incrementală în care sarcina crește treptat. Testul este început cu o sarcină pentru care aplicația a fost deja testată. Apoi, se adaugă încet mai multă sarcină pentru a stresa sistemul. Punctul în care începem să vedem serverele care nu răspund la solicitări este considerat punctul de rupere.
Următoarele întrebări trebuie abordate:
- Care este sarcina maximă pe care o poate suporta un sistem înainte de a se defecta?
- Cum se defectează sistemul?
- Sistemul este capabil să se recupereze odată ce a fost blocat?
- În câte moduri un sistem se poate rupe și care sunt nodul slab în timp ce gestionează sarcina neașteptată?
Testarea volumului
Testarea volumului este de a verifica dacă performanța aplicației nu este afectată de volumul de date care este tratat de aplicație. Pentru a executa un test de volum, un volum imens de date este introdus în baza de date. Acest test poate fi un test incremental sau constant. În testul incremental, volumul de date este crescut treptat.
În general, odată cu utilizarea aplicației, dimensiunea bazei de date crește și este necesar să testați aplicația împotriva unei baze de date grele. Un bun exemplu în acest sens ar putea fi un site web al unei școli noi sau al unei facultăți cu cantități mici de date de stocat inițial, dar după 5-10 ani, stocările de date din baza de date a site-ului web sunt mult mai multe.
Testarea capacității
=> Aplicația este capabilă să îndeplinească volumul afacerii atât în condiții normale cât și de vârf?
Testarea capacității se face în general pentru perspectivele viitoare. Testarea capacității se referă la următoarele:
- Aplicația va putea suporta încărcarea viitoare?
- Mediul este capabil să suporte viitoarea sarcină mărită?
- Care sunt resursele suplimentare necesare pentru ca mediul să fie suficient de capabil?
Testarea capacității este utilizată pentru a determina câți utilizatori și / sau tranzacții o anumită aplicație web va sprijini și va îndeplini în continuare performanța. În timpul acestei testări, resurse precum capacitatea procesorului, lățimea de bandă a rețelei, utilizarea memoriei, capacitatea discului etc. sunt luate în considerare și modificate pentru a îndeplini obiectivul.
Banca online este un exemplu perfect în care testarea capacității ar putea juca un rol major.
Fiabilitate / Recuperare Testarea
Testarea fiabilității sau testarea recuperării - este de a verifica dacă aplicația poate sau nu să revină la starea sa normală după un eșec sau un comportament anormal și cât durează până când face acest lucru (cu alte cuvinte, estimarea timpului).
Dacă un site de tranzacționare online se confruntă cu un eșec în care utilizatorii nu pot cumpăra / vinde acțiuni la un anumit moment al zilei (orele de vârf), dar pot face acest lucru după o oră sau două, putem spune că aplicația este fiabilă sau recuperat din comportamentul anormal.
Procesul de testare a performanței
Iată toate activitățile desfășurate în cadrul acestei testări:
# 1) Analiza / adunarea cerințelor
Echipa de performanță interacționează cu clientul pentru identificarea și colectarea cerințelor - tehnice și de afaceri. Aceasta include obținerea de informații despre arhitectura aplicației, tehnologiile și baza de date utilizate, utilizatorii vizați, funcționalitatea, utilizarea aplicației, cerință de testare , cerințe hardware și software etc.
# 2) POC / Selecție instrument
asistență la întrebări și răspunsuri la interviuri
Odată ce funcționalitatea cheie este identificată, POC (Proof Of Concept - care este un fel de demonstrație a activității în timp real, dar într-un sens limitat) se face cu instrumentele disponibile.
Lista instrumentelor disponibile depinde de costul instrumentului, de protocolul pe care îl folosește aplicația, de tehnologiile utilizate pentru a construi aplicația, de numărul de utilizatori pe care îi simulăm pentru testare etc. În timpul POC, sunt create scripturi pentru cheia identificată funcționalitate și executat cu 10-15 utilizatori virtuali.
# 3) Planul și proiectarea testului de performanță
În funcție de informațiile colectate în etapele precedente, se efectuează planificarea și proiectarea testelor.
Planificarea testului implică informații despre cum va avea loc testul de performanță - mediul de testare, volumul de lucru, hardware etc.
Mai multe despre documentul Strategiei de testare de mai jos.
# 4) Dezvoltarea testului de performanță
- Cazurile de utilizare sunt create pentru funcționalitatea identificată în planul de testare ca domeniul de aplicare al PT.
- Aceste cazuri de utilizare sunt partajate clientului pentru aprobare. Aceasta este pentru a vă asigura că scriptul va fi înregistrat cu pașii corecți.
- Odată aprobat, dezvoltarea scriptului începe cu o înregistrare a pașilor în cazurile de utilizare cu instrumentul de testare a performanței selectat în timpul POC (Dovada conceptelor) și îmbunătățit prin efectuarea corelației (pentru gestionarea valorii dinamice), Parametrizarea (substituirea valorii) și funcții personalizate ca în funcție de situație sau nevoie. Mai multe despre aceste tehnici în tutorialele noastre video.
- Scripturile sunt apoi validate pentru diferiți utilizatori.
- În paralel cu crearea de scripturi, echipa de performanță continuă să lucreze și la configurarea mediului de testare (software și hardware).
- Echipa de performanță se va ocupa și de metadate (back-end) prin scripturi dacă această activitate nu este preluată de client.
# 5) Modelarea testului de performanță
Modelul de încărcare a performanței este creat pentru executarea testului. Scopul principal al acestui pas este de a valida dacă valorile de performanță date (furnizate de clienți) sunt atinse în timpul testului sau nu. Există diferite abordări pentru a crea un model de încărcare. „ Little’s Law ”Este folosit în majoritatea cazurilor.
# 6) Executarea testului
Scenariul este proiectat în conformitate cu Modelul de încărcare din controler sau Centrul de performanță, dar testele inițiale nu sunt executate cu un număr maxim de utilizatori care se află în modelul de încărcare.
Executarea testului se face incremental. De exemplu, Dacă numărul maxim de utilizatori este de 100, scenariile se execută mai întâi cu 10, 25, 50 de utilizatori și așa mai departe, trecând în cele din urmă la 100 de utilizatori.
# 7) Analiza rezultatelor testului
Rezultatele testelor sunt cele mai importante rezultate pentru testerul de performanță. Aici putem demonstra rentabilitatea investiției și rentabilitatea pe care o poate oferi un efort de testare a performanței.
Unele dintre cele mai bune practici care ajută procesul de analiză a rezultatelor:
- Un nume unic și semnificativ pentru fiecare rezultat al testului - acest lucru ajută la înțelegerea scopului testului.
- Includeți următoarele informații în rezumatul rezultatului testului:
- Motivul eșecului
- Modificarea performanței aplicației în comparație cu testul anterior
- Modificări aduse testului din punctul de construire a aplicației sau mediul de testare.
- Este o practică bună să faceți un rezumat al rezultatelor după fiecare test, astfel încât rezultatele analizei să nu fie compilate de fiecare dată când sunt trimise rezultatele testului.
- PT necesită, în general, multe teste pentru a ajunge la concluzia corectă.
- Este bine să aveți următoarele puncte în rezumatul rezultatului:
- Scopul testului
- Număr de utilizatori virtuali
- Rezumatul scenariului
- Durata testului
- Randament
- Grafice
- Compararea graficelor
- Timp de raspuns
- A apărut o eroare
- Recomandări
# 8) Raport
Rezultatele testelor trebuie simplificate, astfel încât concluzia este mai clară și nu ar trebui să aibă nevoie de nicio derivare. Echipa de dezvoltare are nevoie de mai multe informații despre analiză, compararea rezultatelor și detalii despre cum au fost obținute rezultatele.
Raportul de testare este considerat a fi bun dacă este scurt, descriptiv și la obiect.
Cum se scrie un document de strategie de testare a performanței?
Acest tutorial va explica cum se scrie un eșantion de strategie de testare a performanței pentru o aplicație de mesagerie.
Amintiți-vă că acesta este doar un exemplu și că cerințele vor diferi de la un client la altul, vom afla, de asemenea, cele mai bune practici pentru testarea performanței în acest tutorial.
Eșantion de șablon de strategie de testare a performanței
Despre aplicația de chat ABC - Să presupunem că acesta este un banc de lucru chat care este utilizat într-o companie de către agentul lor de asistență pentru clienți, această aplicație de chat utilizează protocolul XMPP, adică Extensible Messaging and Presence Protocol și Open fire server pentru trimiterea și primirea mesajelor instant.
Unele îmbunătățiri au fost aduse acestui client de chat existent, cum ar fi controlul la distanță al computerului, diagnosticarea computerului, instrumente de reparații, chat online etc., astfel încât această strategie de testare a performanței este un eșantion de astfel de aplicații.
Pentru această aplicație, să presupunem că echipa de proiect a decis să o utilizeze JMeter pentru testarea performanței și JIRA pentru urmărirea defectelor.
Prima pagină a documentului Strategiei de testare a performanței ar trebui să conțină titlul documentului și drepturile de autor ale companiei.
A doua pagină ar trebui să conțină Controlul documentelor care include, Istoricul versiunilor documentului, lista Recenzorilor și aprobatorilor și lista Contribuitorilor.
A treia pagină ar trebui să conțină cuprinsul, urmat de subiectele de mai jos.
#1. Introducere
Scopul acestui document este de a defini / explica modul în care testarea performanței va fi efectuată pe aplicația de chat ABC pentru starea actuală și viitoare.
Aplicația de chat ABC este un banc de lucru pentru agent de asistență internă la distanță. Acest banc de lucru va fi utilizat pentru a îndeplini cererile clienților. Acest banc de lucru are funcții precum chat online, identificarea clienților, control la distanță al computerului, diagnosticarea computerului și instrumente de reparații.
Obiectiv
Obiectivele cheie ale testării performanței sunt următoarele:
- Pentru a câștiga încrederea că modificările aduse aplicației de chat existente sunt în conformitate cu Acordul de nivel de serviciu definit.
- Pentru a vă asigura că performanța aplicației, disponibilitatea serviciului și stabilitatea aplicației nu sunt afectate ca urmare a noilor îmbunătățiri.
- Timpii de răspuns la tranzacții rămân în toleranța acceptabilă peste profilul de încărcare în creștere.
- JVM-urile prezintă o utilizare stabilă a memoriei în creșterea profilurilor de încărcare.
Imaginea de mai jos explică în mod clar procesul de testare și optimizare a performanței:
Arhitectură
Trebuie să încorporați schema de arhitectură a proiectului dvs. în această sesiune.
# 2) Domeniul de aplicare
În vedere
Mai jos este domeniul de testare a performanței pentru bancul de lucru ABC chat:
- Achiziționarea de cunoștințe a tranzacțiilor cheie de afaceri și distribuirea sarcinii de construire după un studiu detaliat al sistemului.
- Identificați scenariile critice pentru testarea performanței cu ajutorul diferitelor piste ale proiectului.
- Utilizați rezultatele lansării anterioare ca bază pentru versiunile viitoare.
- Verificați și validați mediul de testare a performanței și infrastructura instrumentului de testare a performanței / încărcării pentru orice mașină de agent suplimentară.
- Pregătirea scripturilor de testare a performanței utilizând JMeter pentru scenariile identificate care imită sarcina maximă identificată.
- Configurați monitorizarea performanței pe servere pentru monitorizarea testului pentru a identifica blocajele în timpul fazei de execuție a testului.
- Publicați rezultatele testelor de performanță.
- Coordonează-te cu diferite părți interesate pentru a rezolva problemele de performanță identificate.
- Stabiliți nivelul de performanță pentru versiunile viitoare.
Fara scop
- Testarea funcțională , UAT, testarea sistemului și testarea securității.
- Testarea performanței / monitorizarea oricărei interfețe terțe.
- Optimizarea performanței. (De cele mai multe ori Tuning-ul este realizat de o altă echipă, dacă în cazul în care aveți ingineri de performanță pentru a regla sistemul, puteți adăuga acest lucru în Inscope).
- Profilare cod / Dimensionare hardware / Planificare capacitate.
- Securitate / Test de vulnerabilitate / UAT / Testarea cutiei albe .
- Generarea de date pentru testarea performanței.
- Teste nefuncționale ( De exemplu, failover, recuperare în caz de dezastru, back-up, utilizare), altele decât testele de performanță.
- Testarea oricărei soluții mobile.
- Testarea și reglarea performanței aplicațiilor de la terți.
- Realizarea recomandărilor de performanță, modificările codului aplicației și modificările de configurație a produselor / serverului acceptate de furnizor vor fi în afara domeniului de aplicare din perspectiva echipei de performanță.
- Suport infrastructură / Implementare construire / Pregătirea mediului / Restaurare baze de date / Suport rețea etc.
# 3) Abordare
Testarea performanței pentru chat-ul ABC va fi efectuată folosind Jmeter prin scrierea pluginurilor XMPP personalizate care utilizează o bibliotecă smack pentru conexiunile XMPP. Aceste biblioteci sunt utilizate pentru a configura conexiuni, a vă conecta și a trimite mesaje de chat către serverul XMPP.
verificator gramatical gratuit mai bun decât gramatic
Aceste biblioteci sunt grupate într-un fișier jar care este implementat în Jmeter și este proiectat pe baza scenariilor de testat. Jmeter Work Bench este instalat în mașina locală care se conectează la serverul JMeter care are Generatoare de încărcare pentru a genera sarcina necesară pe sistemul serverului Chat pentru a monitoriza comportamentul sistemului.
Scenariul de testare va fi scriptat folosind instrumentul JMeter. Scripturile vor fi personalizate după cum este necesar. Programul va fi creat cu creșterea necesară pentru a simula scenariile din lumea reală.
Scenariul de testare va fi divizat și măsurat în următoarele aspecte:
a) Test de referință: Pentru a rula fiecare scenariu cu 1 Vuser și mai multe iterații pentru a identifica dacă performanța aplicației respectă sau nu Acordul de nivel de serviciu al companiei.
b) Test de sarcină de bază: Pentru a îndeplini criteriul de referință pentru afaceri sub testul de încărcare, echipa de testare a performanței va efectua un test de încărcare de bază, care va ajuta la identificarea oricăror probleme de performanță ale sistemului cu creșterea sarcinii și va crea linia de bază pentru următorul nivel de testare a performanței.
c) Test de sarcină maximă / scalabilitate: Echipa de testare a performanței va efectua mai multe teste cu Vusers în creștere pentru a satisface sarcina așteptată și, de asemenea, pentru a măsura performanța aplicației pentru a stabili curba de performanță și pentru a identifica dacă implementarea poate suporta acordurile de nivel de serviciu sub sarcina maximă a utilizatorului.
Ajută la reglarea sau planificarea capacității mașinilor virtuale Java (JVM) individuale, numărul total de JVM necesare și procesoare. Acest lucru se va realiza prin creșterea numărului de Vusers la 50%, 75%, 100% și 125% din capacitatea maximă.
d) Test de anduranta: Echipa de testare a performanței va efectua acest test pentru o perioadă de 8 ore / 16 ore / 24 de ore pentru a identifica scurgerile de memorie, problemele de performanță în timp și stabilitatea generală a sistemului. În timpul testelor de rezistență, echipa de testare a performanței monitorizează indicatorii cheie de performanță, cum ar fi timpii de răspuns la tranzacții și stabilitatea utilizării memoriei.
Resursele de sistem cum ar fi CPU, memorie și IO trebuie monitorizate cu ajutorul echipei de proiect.
Se presupune că mediul de testare a performanței este o replică a mediului de producție. Testele vor fi executate cu o încărcare incrementală pentru a identifica unde eșuează aplicația.
Scenarii de testare a performanței
Includeți excelul cu setul de scenarii.
De exemplu,
Scenariul 1: Pentru a valida chat-ul agentului și clientului pentru X nr. a sesiunilor concurente.
Tipuri de teste de performanță
Tabelul prezentat mai jos explică diferitele tipuri de teste de performanță, împreună cu obiectivele acestora.
Tipul testului | Obiectiv |
---|---|
UAT | Testarea acceptării utilizatorului |
Testul de bază | Stabiliți cea mai bună performanță în volume specifice, care vor fi utilizate ca referință pentru măsurători ulterioare. |
Test de încărcare | Măsurați performanța sistemului sub sarcina de producție maximă anticipată. |
Test de anduranta | Măsurarea stabilității sistemului sub volum mare pentru o perioadă îndelungată. |
Test de stres | Măsurați performanța sistemului în condiții nefavorabile. |
Valori de performanță
- Valori din partea clientului
S. Nu | Metric | Descriere | Format |
---|---|---|---|
1 | Timp de răspuns la tranzacție | Timpul de răspuns al paginilor în timpul stării de echilibru a testului de performanță | Grafic |
Două | Randament | Cantitatea de date pe care VUsers le-a primit de la server în timp | Grafic |
3 | Afisari / secunda | Numărul de solicitări HTTP făcute de VUsers către serverul Web în timpul rulării scenariului | Grafic |
4 | Numărul de tranzacții trecute / nereușite | Numărul total de tranzacții care au trecut și nu au reușit în timpul executării testului | excela |
5 | Rata de eroare a tranzacției | Procentul de tranzacții care au eșuat în timpul executării testului | Grafic |
- Valori de performanță ale sistemului și ale rețelei
Activități și rezultate de testare a performanței
# 4) Date de testare
Se presupune că datele privind mediul de performanță vor fi o copie a datelor de producție, iar datele de testare necesare vor fi furnizate de echipa de proiect.
# 5) Criterii de intrare și ieșire
- Acces la toate aplicațiile din mediu.
- Pregătirea mediului completă.
- Pregătirea datelor pentru testul de performanță.
# 6) Gestionarea defectelor
- Modulul de gestionare a defectelor din JIRA va fi utilizat în proiect pentru înregistrarea defectelor și pentru urmărirea până la închidere.
- Identificarea defectelor găsite în timpul fazei de execuție a testului va fi capturată în JIRA și aceste defecte vor fi rezolvate de echipa de dezvoltare în funcție de severitățile de mai jos.
- Întâlnirile de revizuire a defectelor vor avea loc zilnic, cu participarea testării, dezvoltării, a analiștilor de calitate și a echipelor de afaceri.
- Criteriile de remediere a defectelor ar deveni stricte pe măsură ce proiectul se apropie de data Go Live. Liniile directoare pentru criteriile de remediere a defectelor vor fi publicate în ședințele de examinare a defectelor.
Definiție severitate defect
Definițiile codurilor de severitate sunt după cum urmează:
Severitate | Descriere pentru probleme de dezvoltare și îmbunătățire |
---|---|
Blocant | Eroare de sistem, afișare dop, probleme de rețea |
Critic | Erori de sistem, nicio soluție clară, întrerupere sau lipsa funcționalității companiei |
Major | A fost detectată o problemă gravă pentru care există o soluție care ar putea să nu fie clară pentru toți utilizatorii, cu toate acestea, produsul nu ar trebui să fie lansat fără remedierea |
Mediu | Există o problemă cu rezolvarea ușoară / simplă, dar acest tip de defect poate fi eliberat după aprobarea de către companie și / sau managerul de proiect |
Scăzut | Probleme cosmetice care nu interferează cu funcționalitatea afacerii sau alte probleme intermitente care nu sunt reproductibile de fiecare dată |
# 7) Instrumente și tehnici de testare
Instrumente | Scop |
---|---|
Jmeter | Pentru a verifica încărcarea și performanța aplicației ABC Chat. |
# 8) Criterii de suspendare și reluare
Mai jos sunt prezentate criteriile de suspendare și reluare critică care vor avea impact asupra activităților de testare:
Suspensie | Impact | Reluare |
---|---|---|
Mediul nu este configurat | Testarea nu poate continua | Pregătirea mediului. |
Aplicația sa dovedit a fi instabilă | Testarea nu poate continua. | Problemă rezolvată |
Datele de testare nu sunt disponibile | Testarea nu poate continua. | Date de testare gata |
# 9) Testați livrabilele
Livrabilele testului de performanță includ:
- Strategia de testare a performanței
- Document de cerințe de performanță
- Document de scenariu de test de performanță
- Scripturi de testare a performanței
- Rezultatele testului de performanță
# 10) Roluri și responsabilități
Rolurile și responsabilitățile sunt explicate clar în tabelul de mai jos.
# 11) Riscuri potențiale și plan de atenuare
S. Nu | Risc | Probabilitate | Impact | Plan de atenuare | Proprietar |
---|---|---|---|---|---|
1 | Indisponibilitatea datelor de testare pentru executarea testelor de încărcare a performanței | H | H | Datele estimate pentru execuțiile testului de performanță ar trebui revizuite și actualizate. Suportul echipei funcționale / de dezvoltare este necesar pentru colectarea datelor. | - |
Două | Probleme de mediu | L | M | Re prioritizați livrabilele | - |
3 | Modificarea funcționalității / designului în timpul executării testului de performanță | M | H | Acest lucru necesită relucrarea scenariilor de testare a performanței | - |
4 | Performanța suplimentară rulează pentru depanarea problemelor de performanță | M | H | Programele de testare a performanței vor fi modificate și actualizate pentru echipa de produs. | - |
5 | Estimările sunt pregătite pe baza unei soluții de corectare a erorilor pentru performanță. Mai multe versiuni de remediere a erorilor vor întârzia ciclurile de testare și, în cele din urmă, depinde de momentul în care următoarea versiune va fi disponibilă pentru reluare. | H | H | Se acordă prioritate ciclurilor de execuție a testului de performanță. | - |
6 | Disponibilitate hardware | M | H | Data de începere a programului ar fi mutată în consecință. | - |
# 12) Ipoteze
- Performance Test Environment va fi o replică a peisajului arhitecturii produsului. (adică hardware corect, software, interfețe, straturi de integrare etc.).
- Scripturile de performanță vor fi proiectate pe baza fluxurilor critice pentru care utilizarea este ridicată.
- Toate problemele de infrastructură ar trebui rezolvate înainte de începerea testării performanței. Orice modificare a configurației sistemului efectuată ulterior va invalida rezultatele testului.
- O aplicație este stabilă și gata de utilizare în mediul de testare a performanței.
- Sunt puse la dispoziție resursele hardware și software necesare (cum ar fi mașinile generatoare de sarcini / software, mașinile controler / agent).
- Orice modificare a domeniului de aplicare va trece printr-un proces de control al schimbărilor, iar echipa de testare a performanței va evalua impactul calendarelor și resurselor.
- Se așteaptă ca serverele respective să gestioneze sarcina.
- Jurnalele de urmărire a aplicațiilor trebuie să fie activate pentru sistemele de suport în scopuri de monitorizare.
# 13) Dependențe
- Disponibilitatea mediului de testare a performanței, care este o replică a peisajului arhitecturii produsului.
- Suport necesar de la diverse echipe funcționale, de dezvoltare, baze de date și infrastructură în timpul etapelor de pregătire și execuție a testului.
- Nu sunt implementate modificări de cod pe întreaga fază de testare a performanței, deoarece timpul este foarte limitat.
- În cazul apariției unor probleme neprevăzute care duc la restricții în termenele limită, dacă termenele nu permit îndeplinirea tuturor domeniilor de testare în datele de referință inițiale, suportul este disponibil din partea Managerilor de versiuni, pentru a furniza o decizie de stabilire a domeniului și stabilirea priorităților.
- Utilizatorii afacerii aplicației / Experții în materie vor fi disponibili pentru clarificări funcționale și semnarea tranzacțiilor comerciale.
- Managerul de programe de chat ABC va examina și va semna.
# 14) Abrevieri
Abreviere | Descriere |
---|---|
DB | Bază de date |
Http | Protocol de transfer de text hiper |
JDBC | Conectivitate la baza de date Java |
QA | Asigurarea calității |
SALATĂ VERDE | Acord privind nivelul serviciilor |
IMM-uri | Expert în materie |
Până acum trebuie să fi înțeles clar cum să scrii o strategie eficientă de testare a performanței pentru o aplicație de mesagerie.
Cele mai bune practici pentru testarea realistă a performanței
Pentru a finaliza cu succes un proiect de testare a performanței, trebuie să ne asigurăm că o facem în modul corect din etapa de planificare, adică planificare, dezvoltare, execuție și analiză.
Să aruncăm o privire detaliată asupra fiecărei etape, pentru a efectua testarea performanței în mod eficient.
# 1) Planificare
- Încercați să identificați cele mai frecvente fluxuri de lucru, adică scenariile de afaceri care trebuie testate. Dacă aplicația este una existentă, verificați jurnalele serverului pentru a înțelege scenariile cele mai frecvent accesate. Dacă aplicația este nouă, discutați cu echipa de management de proiect pentru a înțelege fluxul major de afaceri.
- Planificați testul de încărcare în așa fel încât să acoperiți o gamă largă de fluxuri de lucru, cum ar fi utilizarea luminii, utilizarea medie și sarcinile maxime.
- Trebuie să efectuați multe cicluri ale Testului de încărcare, așa că încercați să creați un cadru, astfel încât să puteți utiliza aceleași scripturi din nou și din nou. De asemenea, încercați să aveți o copie de rezervă a scripturilor.
- Încercați să analizați cât durează un test, este o oră? 8 ore? O zi sau o săptămână? De obicei, testele de lungă durată vor descoperi multe defecte majore, cum ar fi erori de sistem de operare, scurgeri de memorie etc.
- Dacă organizația dvs. folosește orice instrument APM (Application Monitoring Tool), îl puteți include în timpul testelor, astfel încât să puteți identifica cu ușurință problemele de performanță și să identificați mai ușor cauza principală.
# 2) Dezvoltare
- În timp ce dezvoltați scripturile, adică înregistrarea, încercați să dați un nume de tranzacție mai semnificativ pe baza numelor de flux de afaceri menționate în plan.
- Nu înregistrați nicio aplicație terță parte și, dacă este înregistrată, încercați să o filtrați în timp ce îmbunătățiți scripturile.
- Nu toate valorile dinamice pot fi corelate folosind funcția Autocorelare din instrument, așa că încercați să faceți o corelație manuală pentru a evita erorile.
- Încercați să vă proiectați testele de performanță în așa fel încât să atingeți backend-ul aplicației și nu doar serverul cache.
# 3) Executarea
- Asigurați-vă că rulați testele într-un mediu similar producției, inclusiv factori precum SSL, Load Balancer și Firewalls. Acest lucru este necesar pentru a simula o sarcină realistă pe sistem.
- Încercați să creați o sarcină de lucru care este foarte realistă, puteți obține acest lucru verificând jurnalele serverului dacă este o aplicație existentă și dacă este o aplicație nouă, trebuie să obțineți aceste informații de la echipa de afaceri. Amintiți-vă că volumul de lucru este foarte important pentru desfășurarea testelor de performanță cu succes.
- Nu ajungeți niciodată la o concluzie efectuând teste cu jumătate din dimensiunea producției, este întotdeauna recomandat să efectuați teste într-un mediu care este la fel ca producția.
- În timp ce executați teste pe termen lung, încercați să urmăriți cursa la intervale frecvente pentru a vă asigura că testul rulează fără probleme.
# 4) Analiza
- Încercați să analizați aplicația adăugând mai întâi câteva contoare importante, atunci când este găsit un blocaj, apoi încercați să adăugați contoare suplimentare cu privire la blocaj. La rândul său, acest lucru va ajuta la găsirea problemei mai ușor.
- O aplicație poate eșua din mai multe motive, cum ar fi să nu răspundă la o cerere, să răspundă cu un cod de eroare, să nu reușească logica de validare sau să răspundă prea lent. Deci, încercați să analizați toate acestea înainte de a ajunge la o concluzie.
Concluzie
Sunt sigur că acest tutorial v-ar fi oferit cunoștințe imense despre testele de performanță și despre cum să scrieți un document de strategie de testare a performanței cu exemple detaliate.
În viitorul nostru tutorial, vom învăța în detaliu diferențele dintre testarea performanței, sarcinii și a stresului.
De asemenea, bifați => Seria gratuită de antrenament LoadRunner
Lectură recomandată
- Testarea performanței vs testarea sarcinii vs testarea stresului (diferență)
- Testarea încărcării cu tutoriale HP LoadRunner
- Testarea performanței în cloud: Furnizori de servicii de testare a încărcării bazate pe cloud
- Testarea sarcinii, stresului și performanței aplicațiilor web utilizând WAPT
- Instrumente și servicii de testare a performanței site-ului web
- Cum se efectuează testarea manuală a performanței?
- Testarea performanței aplicațiilor mobile utilizând BlazeMeter
- Servicii Web Testarea performanței utilizând LoadRunner VuGen Scripting