performance testing vs load testing vs stress testing
Diferència entre proves de rendiment, proves de càrrega i proves d’esforç, amb exemples
El nostre tutorial anterior d’aquesta sèrie serà el millor Guia de proves de rendiment per a qualsevol principiant.
En el camp de les proves de programari, trobem termes com ara proves de rendiment, proves de càrrega, proves d’esforç, etc. Aquests termes sovint s’entenen malament i s’interpreten com els mateixos conceptes.
No obstant això, hi ha una diferència significativa entre aquests tres tipus de proves i és important que un comprovador entengui el mateix.
=> Feu clic aquí per obtenir una sèrie completa de tutorials de proves de rendiment
En aquest tutorial, parlarem de cadascun d’aquests tipus de proves per entendre les diferències exactes entre ells.
Què aprendreu:
Diferència entre proves de rendiment, proves de càrrega i proves d’esforç
# 1) Prova de rendiment
Què són les proves de rendiment?
La prova de rendiment és la prova que es realitza per determinar el rendiment dels components d’un sistema en una determinada situació.
Aquesta prova també valida l’ús, l’escalabilitat i la fiabilitat dels recursos del producte. Aquestes proves són el subconjunt de l'enginyeria de rendiment, que se centra a abordar problemes de rendiment en el disseny i l'arquitectura d'un producte de programari.
La imatge anterior ens ho explica clarament Les proves de rendiment són el superconjunt tant per a proves de càrrega com d'esforç. Altres tipus de proves incloses en les proves de rendiment són les proves Spike, les proves de volum, les proves de resistència i Proves d’escalabilitat . Per tant, les proves de rendiment són bàsicament un terme molt ampli.
Objectiu de proves de rendiment:
L’objectiu principal de les proves de rendiment inclou establir el comportament de referència del sistema. Hi ha una sèrie de punts de referència definits per la indústria que s’han de complir durant les proves de rendiment.
Les proves de rendiment no tenen l'objectiu de trobar defectes a l'aplicació. Tampoc no supera ni suspèn la prova. Més aviat, tracta la tasca crítica de configurar el fitxer punt de referència i estàndard per a una aplicació . Les proves de rendiment s'han de fer amb molta precisió. La supervisió estreta del rendiment de l’aplicació / sistema és la característica principal de les proves de rendiment.
El punt de referència i l'estàndard de l'aplicació s'han d'establir en termes d'atributs com ara velocitat, temps de resposta, rendiment, ús de recursos i estabilitat. Tots aquests atributs es posen a prova en una prova de rendiment.
Per exemple,
Per exemple, podeu provar el rendiment de la xarxa de l'aplicació mitjançant el gràfic 'Velocitat de connexió vs. latència'. La latència és la diferència horària entre les dades a arribar des de la font fins a la destinació.
Una pàgina de 70 kb no trigaria més de 15 segons a carregar-se per a la pitjor connexió del mòdem de 28,8 kbps (latència = 1000 mil·lisegons), mentre que la pàgina de la mateixa mida apareixia en un termini de 5 segons per a la connexió mitjana de 256 kbps DSL (latència = 100 mil·lisegons).
Una connexió T1 a 1,5 mbps (latència = 50 mil·lisegons) tindria el paràmetre de rendiment establert en 1 segon per assolir aquest objectiu.
Un altre exemple seria el d’un model Sol·licitud-resposta. Podem establir un punt de referència segons el qual la diferència horària entre la generació de sol·licituds i el reconeixement de resposta hauria d’estar en l’interval de x ms (mil·lisegons) i y ms, on x i y són els dígits estàndard.
Una prova de rendiment satisfactòria hauria de projectar la majoria dels problemes de rendiment, que podrien estar relacionats amb bases de dades, xarxa, programari, maquinari, etc.
# 2) Prova de càrrega
La prova de càrrega pretén provar el sistema augmentant constantment i constantment la càrrega del sistema fins que arriba al límit límit. És un subconjunt de proves de rendiment.
algorisme d'ordenació simple c ++
Les proves de càrrega es poden fer fàcilment utilitzant qualsevol de les eines d’automatització adequades disponibles al mercat. WAPT i LoadRunner són dues eines tan famoses que ajuden a les proves de càrrega. Les proves de càrrega també són famoses per noms com Proves de volum i Proves de resistència .
No obstant això, les proves de volum se centren principalment en bases de dades. Proves de resistència prova el sistema mantenint-lo sota una càrrega important durant un període de temps sostingut.
L’únic propòsit de les proves de càrrega és assignar al sistema el treball més gran que pugui fer per provar la resistència del sistema i controlar els resultats. Un fet interessant aquí és que de vegades el sistema s’alimenta amb una tasca buida per determinar el comportament del sistema en la situació de càrrega zero.
Els atributs que es controlen en una prova de càrrega inclouen el rendiment màxim, el rendiment del servidor, el temps de resposta sota diversos nivells de càrrega (per sota del llindar de ruptura), l’adequació de l’entorn H / W, quantes aplicacions d’usuari pot gestionar sense afectar el rendiment.
Objectiu de proves de càrrega:
Els objectius de les proves de càrrega inclouen:
- Exposar els defectes d'una aplicació relacionada amb el desbordament de memòria intermèdia, les fuites de memòria i la mala gestió de la memòria. Els problemes que acabarien sorgint com a resultat de les proves de càrrega poden incloure problemes d’equilibri de càrrega, problemes d’amplada de banda, la capacitat del sistema existent, etc.
- Determinar el límit superior de tots els components d'una aplicació com ara una base de dades, maquinari, xarxa, etc. perquè l'aplicació pugui gestionar la càrrega prevista en el futur.
- Per establir els SLA de l'aplicació.
Per exemple,
Considerem comprovar la funcionalitat de correu electrònic d’una aplicació, que podria inundar-se amb 1.000 usuaris a la vegada. Ara, 1.000 usuaris poden activar les transaccions de correu electrònic (llegir, enviar, suprimir, reenviar, respondre) de moltes maneres diferents.
Si prenem una transacció per usuari per hora, seria de 1.000 transaccions per hora. Simulant 10 transaccions / usuaris, podríem carregar la prova del servidor de correu electrònic ocupant-lo amb 10.000 transaccions / hora.
A la imatge següent es mostra un altre exemple de prova de càrrega:
La imatge anterior mostra una prova de càrrega feta a l'eina anomenada JMeter . Aquesta prova es fa per identificar quants usuaris pot gestionar un sistema. En aquesta prova, s’afegeixen 100 usuaris cada 30 segons fins que la càrrega arriba als 1.000 usuaris. Cada pas triga 30 segons a completar-se i JMeter espera 30 segons abans d'iniciar el següent pas.
Un cop la càrrega assoleixi els 1000 fils, tots ells continuaran funcionant durant 300 segons (5 minuts) junts i, finalment, pararan 10 fils cada 3 segons.
# 3) Proves d’estrès
Sota les proves d’estrès, es duen a terme diverses activitats per sobrecarregar els recursos existents amb excés de llocs de treball per intentar trencar el sistema. Proves negatives , que inclou l'eliminació dels components del sistema, també es fa com a part de les proves d'esforç.
preguntes i respostes d’entrevistes de metodologia àgil
També conegut com proves de fatiga , aquesta prova hauria de captar l'estabilitat d'una aplicació provant-la més enllà de la seva capacitat d'ample de banda.
Així, bàsicament, les proves d’esforç avaluen el comportament d’una aplicació més enllà de la càrrega màxima i de les condicions normals.
L’objectiu de les proves d’esforç és determinar el fracàs del sistema i controlar com es recupera el sistema amb gràcia. El repte aquí és configurar un entorn controlat abans de llançar la prova, de manera que pugueu capturar amb precisió el comportament del sistema repetidament en els escenaris més imprevisibles.
Els problemes que acabarien apareixent com a conseqüència de les proves d’esforç poden incloure problemes de sincronització, fuites de memòria, condicions de carrera, etc. Si la prova d’esforç està comprovant el comportament del sistema davant d’un augment sobtat del nombre d’usuaris , llavors s’anomena prova de pic.
Si la prova d’esforç vol comprovar la sostenibilitat del sistema durant un període de temps mitjançant una pujada lenta del nombre d’usuaris, s’anomena prova de remull.
Objectiu de la prova d’estrès:
L’objectiu de les proves d’estrès és analitzar els informes posteriors a l’error per definir el comportament de l’aplicació després d’un error.
El repte més gran és assegurar-se que el sistema no compromet la seguretat de les dades sensibles després de la fallada. En una prova d’estrès amb èxit, el sistema tornarà a la normalitat juntament amb tots els seus components, fins i tot després de l’avaria més terrible.
Per exemple,
Com a exemple, un processador de textos com Writer1.1.0 d'OpenOffice.org s'utilitza en el desenvolupament de cartes, presentacions, fulls de càlcul, etc. El propòsit de les nostres proves d'estrès és carregar-lo amb caràcters en excés.
Per fer-ho, enganxarem repetidament una línia de dades fins que arribi al límit límit de manejar un gran volum de text. Tan bon punt la mida del caràcter arribi als 65.535 caràcters, simplement es negaria a acceptar més dades.
El resultat de les proves d'estrès a Writer 1.1.0 produeix el resultat que no es bloqueja sota l'estrès i gestiona la situació amb gràcia, cosa que assegura que l'aplicació funcioni correctament fins i tot en condicions d'estrès rigoroses.
A continuació es mostra un altre exemple de prova de càrrega que mostra una prova de pujada a través de la pujada brusca de 7.000 usuaris:
Preguntes freqüents
Després d’haver tingut prou discussions sobre les proves de rendiment, les proves d’estrès i les proves de càrrega, analitzem ara algunes preguntes freqüents relacionades per a les quals els provadors sol·liciten una resposta.
P # 1) Les proves de càrrega i proves de rendiment són iguals?
Resposta: La resposta a això és 'No'. No són el mateix.
A hores d'ara ja heu entès clarament la diferència entre les proves de rendiment i les proves de càrrega. Podeu consultar el resum de la taula següent per veure com les proves de rendiment i de càrrega tenen diferents objectius, atributs d’abast a estudiar i problemes a descobrir.
Q # 2) És una prova injusta realitzar proves d'estrès al mateix temps quan es realitzen proves de càrrega?
Resposta: Aquesta també és una pregunta comuna en moltes entrevistes de proves de programari i exàmens de certificació, ja que és injust fer proves de tensió i proves de càrrega paral·lelament? La resposta a això és 'No'. No és injust fer proves d’esforç al mateix temps que feu proves de càrrega.
Cap prova és mai injusta. Com a provador, el vostre treball consisteix a trobar problemes. Tanmateix, es poden aplicar les realitats de les proves de programari i qualsevol problema que detecteu en aquesta situació pot no ser solucionat.
P # 3) Les proves de recuperació formen part de les proves de rendiment?
Resposta: Sí, les proves de recuperació es classifiquen en proves de rendiment i, de vegades, també es realitzen amb proves de càrrega. En proves de recuperació , s'accedeix a la forma en què una aplicació es pot recuperar de fallades, bloquejos, fallades de maquinari i altres problemes similars.
En aquesta activitat, el programari es veu obligat a fallar i després es comprova si es pot recuperar correctament. Per exemple, reinicieu el sistema sobtadament quan s’executa una aplicació i després verifiqueu la integritat de les dades de l’aplicació.
Q # 4) Les proves de rendiment requereixen codificació?
Resposta: Les proves de rendiment no requereixen conèixer el nivell avançat de codificació. Tot i això, tenir un coneixement fonamental de la programació és un avantatge afegit.
Per exemple, si utilitzeu JMeter, és bo que conegueu els fonaments de Java. Us pot ajudar a depurar certes coses i també podeu escriure el vostre propi script si cal.
P # 5) Què són les proves Spike a les proves de rendiment?
al model osi, quina capa hi ha a la part inferior i representa el maquinari que forma la xarxa?
Resposta: En les proves de pic, la càrrega augmenta o disminueix bruscament per un gran nombre d'usuaris i, posteriorment, s'observa el comportament del sistema. Les proves de pic es fan principalment per comprovar si el sistema és capaç de gestionar canvis sobtats de la càrrega.
Diferència entre proves de càrrega i esforç
Per resumir, observem les principals diferències entre les proves de càrrega, les proves d’esforç i les proves de rendiment a la taula següent:
Proves de rendiment | Prova de càrrega | Proves d’estrès | |
---|---|---|---|
Domini | Superconjunt de proves de càrrega i esforç | Un subconjunt de proves de rendiment. | Un subconjunt de proves de rendiment. |
Abast | Abast molt ampli. Inclou: proves de càrrega, proves d’estrès, proves de capacitat, proves de volum, proves de resistència, proves d’espiga, proves d’escalabilitat i proves de fiabilitat, etc. | Abast més reduït en comparació amb les proves de rendiment. Inclou proves de volum i proves de resistència. | Abast més reduït en comparació amb les proves de rendiment. Inclou proves de remull i proves de pic. |
Objectiu principal | Per establir el punt de referència i els estàndards de l'aplicació. | Per identificar el límit superior del sistema, configureu l'SLA de l'aplicació i vegeu com el sistema gestiona els volums de càrrega importants. | Identificar com es comporta el sistema sota càrregues intenses i com es recupera de fallades. Bàsicament, per preparar la vostra aplicació per a la pujada de trànsit inesperada. |
Límit de càrrega | Tots dos, per sota i per sobre del llindar d'un descans. | Fins al llindar del trencament | Per sobre del llindar del trencament |
Atributs estudiats | Ús de recursos, fiabilitat, escalabilitat, ús de recursos, temps de resposta, rendiment, velocitat, etc. | rendiment màxim, rendiment del servidor, temps de resposta sota diversos nivells de càrrega (per sota del llindar del descans), adequació de l’entorn H / W, nombre d’aplicacions d’usuari que poden gestionar, requisits d’equilibri de càrrega, etc. | Estabilitat més enllà de la capacitat d’amplada de banda i el temps de resposta (per sobre del llindar del descans), etc. |
Problemes identificats mitjançant aquest tipus de proves | Tots els errors de rendiment, inclosos els temps d'execució en temps d'execució, l'abast de l'optimització, problemes relacionats amb la velocitat, la latència, el rendiment, etc. Bàsicament, qualsevol cosa relacionada amb el rendiment. | Problemes d’equilibri de càrrega, problemes d’amplada de banda, problemes de capacitat del sistema, poc temps de resposta, problemes de rendiment, etc. | Escletxes de seguretat amb sobrecàrrega, problemes de corrupció de dades en situacions de sobrecàrrega, lentitud, fuites de memòria, etc. |
Diferència entre proves de càrrega, esforç i volum
A hores d’ara ja sabem sobre les proves de càrrega i esforç juntament amb les diferències entre tots dos. Ara explorem què són les proves de volum i en què es diferencia de les proves de càrrega i les proves d’esforç.
La prova de volum també és un tipus de prova de rendiment que se centra principalment en la base de dades.
A les proves de volum, es comprova com es comporta el sistema contra un determinat volum de dades. Així, les bases de dades s’omplen de la seva capacitat màxima i es controlen els seus nivells de rendiment, com ara el temps de resposta i el rendiment del servidor.
Per fer-ho molt senzill, a continuació es mostra la diferència entre les proves de càrrega, esforç i volum:
Proves de volum | Prova de càrrega | Proves d’estrès |
---|---|---|
Una gran quantitat de dades | Un gran nombre d’usuaris | Hi ha massa usuaris, massa dades, cap al bloqueig del sistema. |
Conclusió
En aquest tutorial, hem vist i entès a través d’exemples de com les proves de rendiment, les proves de càrrega i les proves d’esforç són diferents entre si i quin és l’abast de cada tipus de prova.
També vam fer un breu repàs a moltes categories de proves de rendiment, com ara proves de pujada, proves de recuperació, proves de volum, etc., i vam entendre com són diferents cadascuna d’elles.
Esperem que aquest tutorial us hagi estat de gran ajuda per entendre la diferència pràctica entre proves de rendiment, càrrega i esforç.
Consulteu el nostre proper tutorial per obtenir més informació sobre les proves funcionals i les proves de rendiment.
=> Visiteu aquí per obtenir una sèrie completa de tutorials de proves de rendiment
Lectura recomanada
- Una guia completa de proves de rendiment amb exemples
- Guia de proves d’estrès per a principiants
- Guia completa de proves de càrrega per a principiants
- Proves de càrrega, esforç i rendiment d'aplicacions web mitjançant WAPT
- Prova de càrrega amb tutorials HP LoadRunner
- Proves de rendiment al núvol: proveïdors de serveis de proves de càrrega basades en el núvol
- Proves funcionals i proves de rendiment: s'hauria de fer simultàniament?
- Prova de càrrega mitjançant LoadUI: una eina de prova de càrrega de codi obert i lliure