Sie sind auf Seite 1von 17

Pruebas de Desempeo

Brbara Espinoza
Vanessa Quintas
Alexandra Vega

1
Pruebas de desempeo
Qu son?
Objetivo
Cmo analizar el desempeo
Tipos de pruebas
Consideraciones finales

2
Qu son las pruebas de
desempeo?
Son un tipo de pruebas que permiten
analizar y evaluar las caractersticas
del software relacionadas con el
desempeo, por ejemplo:
Tiempos de respuesta
Throughput (tasa de atencin de
peticiones)
Capacidad (mximo trabajo til por
unidad de tiempo)

[RUP]

Performance testing is a class of tests implemented and executed to characterize


and evaluate the performance-related characteristics of the target-of-test, such as
the timing profiles, execution flow, response times, and operational reliability and
limits. Different types of performance tests, each focused on a different test
objective, are implemented throughout the software development lifecycle (SDLC).

[Prof. Curiel]

Tiempo de Respuesta: es el intervalo de tiempo que transcurre entre la solicitud


de un usuario al
sistema y la respuesta de este ltimo.
Throughput: es la tasa a la cual el sistema puede atender las peticiones.
Capacidad: Mxima cantidad de trabajo til que se puede realizar por unidad de
tiempo.

3
Objetivo de las pruebas de
desempeo
El objetivo de las pruebas de
desempeo es verificar y validar los
requisitos de desempeo que se han
especificado.

4
Cmo analizar el desempeo?
1. Se evalan los resultados de una
prueba para un actor o un caso de
uso comparndolo con varias
ejecuciones de la misma.
2. Se examinan las estadsticas
resumidas recaudadas para un actor
o caso de uso en busca de
indicadores de variabilidad de las
respuestas del sistema.

[RUP]

The first level of performance analysis involves evaluating the results for a single
actor or use-case instance and comparing the results across several test
executions; for example, capturing the performance behavior of a single actor
performing a single use case without any other activity on the target-of-test and
comparing the results with several other test executions of the same actor or use
case. This first-level analysis can help identify trends that could indicate contention
among system resources, which may affect the validity of the conclusions drawn
from other performance test results.
A second level of analysis examines the summary statistics and actual data values
for specific actor or use-case execution, and the target-of-test's performance
behavior. Summary statistics include standard deviations and percentile
distributions for the response times, which provide an indication of the variability in
system responses as seen by individual actors.
A third level of analysis can help in understanding the causes and significance of
performance problems. This detailed analysis takes the low-level data and uses
statistical methods to help testers draw correct conclusions from the data. Detailed
analysis provides objective and quantitative criteria for making decisions, but it's
more time consuming and requires a basic understanding of statistics.

5
Cmo analizar el desempeo?
3. Se utilizan mtodos estadsticos con
el fin de obtener conclusiones acerca
del desempeo del sistema,
comprender sus causas y su
importancia.

6
Tipos de pruebas de desempeo
Pruebas de benchmark
Pruebas de stress
Pruebas de perfil de desempeo
Pruebas de carga

[RUP]

The following types of tests are included in Performance Testing:


Benchmark testing: Compares the performance of new or unknown target-of-test
to a known reference standard, such as existing software or measurements.
Contention test: Verifies the target-of-test can acceptably handle multiple actor
demands on the same resource (data records, memory, and so forth).
Performance profiling: Verifies the acceptability of the target-of-test's performance
behavior using varying configurations while the operational conditions remain
constant.
Load testing: Verifies the acceptability of the target-of-test's performance behavior
under varying operational conditions (such as number of users, number of
transactions, and so on) while the configuration remains constant.
Stress testing: Verifies the acceptability of the target-of-test's performance
behavior when abnormal or extreme conditions are encountered, such as
diminished resources or an extremely high number of users.

7
Pruebas de Benchmark
Comparan el desempeo del sujeto
de prueba con el de un sistema y
carga de trabajo de referencia.
Benchmark es sinnimo de carga de
prueba: programas utilizados para
cargar el sistema y medir el
rendimiento del sistema o de partes
de ste.

[RUP]

Benchmark test: A type of performance test that compares the performance of a


new or unknown target-of-test to a known reference-workload and system.

8
Pruebas de Benchmark
Cada benchmark se concentra en un
aspecto distinto del desempeo y se
debe escoger el adecuado a cada
caso:
Uso intensivo del CPU.
Uso intensivo de disco.
Uso intensivo de memoria.
Representacin grfica
Otros

[Prof. Ignacio Casas]


Si el ambiente planeado va a dedicarse al clculo numrico o al anlisis estadstico
(uso intensivo de CPU), no se puede tomar una decisin en base a benchmarks de
bases de datos (uso intensivo de discos) o de representacin grfica.

9
Pruebas de Stress
Permiten verificar la aceptabilidad del
desempeo del sistema ante
condiciones anormales o extremas:
Volumen de usuarios/transacciones
extremadamente alto
Recursos escasos:
Poco ancho de banda
Memoria reducida
Espacio en disco reducido

Verifies the acceptability of the target-of-test's performance behavior when


abnormal or extreme conditions are encountered, such as diminished resources or
an extremely high number of users.

10
Pruebas de Stress
En realidad las condiciones de stress
no se espera que sucedan en la
realidad.
Estas pruebas tambin permiten
documentar las condiciones bajo las
cuales el sistema falla: lmites.

11
Pruebas de perfil de desempeo
Enfocadas a monitorear el
comportamiento de una aplicacin en
ejecucin con el fin de conocer dnde
invierte su tiempo:
Acceso a a datos
Llamadas a un procedimiento
Llamadas al sistema
Permiten identificar cuellos de botella
y procesos ineficientes

[RUP]

A test in which the target-of-test's timing profile is monitored, including execution


flow, data access, function and system calls to identify and address both
performance bottlenecks and inefficient processes.

[Edu Metz]

Performance profiling is the means of determining


where a software system spends its execution time. It uses
trace instrumentation to gather event data. Various types
of event information can be obtained with traces, such as
component entry and exit, function calls, software
execution states, message communication, resource usage,
etc.

12
Herramientas de perfil de
desempeo
Una herramienta de perfil de
desempeo:
Corre la aplicacin en un ambiente
controlado
Realiza una traza de su flujo de
ejecucin
Retorna un reporte del consumo de
tiempo y memoria.

[Linux Journal]

Performance profiling runs your code in a controlled environment and returns a


report listing such statistics as time spent within each function, how long each
database query takes and how much memory has been used.
By doing performance profiling on your code, you quickly can see where you may
be wasting time with slow database queries or inefficient code. Having this
information then allows you to spend your time tuning PHP and SQL where it needs
it most. No more guessing what's going on internally: performance profiling gives
you hard figures.

13
Pruebas de carga
Permiten verificar y validar el desempeo
de un elemento de un sistema bajo
diferentes condiciones de carga:
Nmero de usuarios
Nmero de transacciones
Son importantes cuando los sistemas
debern soportar un gran volumen de
usuarios o transacciones concurrentes

[RUP]

The Load Testing process component is concerned with the process of testing
software under emulated production transaction and user loading.

Load Testing is an important concern in software that will support large transaction
or user volumes.

14
Pruebas de carga
Se utilizan simulaciones de cargas de
trabajo promedio y pico dentro de los
niveles normales.
Deben ser realizadas bajo condiciones
controladas para asegurar la precisin
de las medidas tomadas:
Tiempo de respuesta
Throughput

A type of performance test used to validate and assess acceptability of the


operational limits of a system under varying workloads while the system-under-test
remains constant. In some variants, the workload remains constant and the
configuration of the system-under-test is varied. Measurements are usually taken
based on the workload throughput and in-line transaction response time. The
variations in workload usually include emulation of average and peak workloads that
occur within normal operational tolerances.

15
Consideraciones finales
Las pruebas de desempeo son muy
senbibles a las condiciones sobre las
cuales se aplican. Se debe ser
cuidadoso al:
Elegir la carga de trabajo.
Considerar/ignorar los distintos
parmetros que intervienen:
Variaciones en el ambiente
Intervencin de herramientas de monitoreo
Realizar el anlisis de los resultados.

16
Bibliografa
Rational Unified Process. Versin
2003.06.00.65
Prof. Mariela Curiel. Introduccin a la Evaluacin del
Desempeo de Sistemas Informticos.
Edu Metz, Efficient Instrumentation for Performance
Profiling.
http://www.cs.nmsu.edu/~jcook/woda2003/papers/M
etz.pdf
PHP Performance Profiling, Linux Journal.
http://www.linuxjournal.com/article/7213
Prof. Ignacio Casas. Tcnicas de Pruebas de Cargas.
http://cursos.puc.cl/html/iic3532-
1/almacen/20050222173726_Trans7x1BN_sec1.PDF

17

Das könnte Ihnen auch gefallen