Prueba avanzada de rendimiento del sistema

Concepto basico

1. El rendimiento del sistema incluye: eficiencia de ejecución, ocupación de recursos, estabilidad del sistema, seguridad, compatibilidad, confiabilidad y escalabilidad.
2. Ocho categorías de pruebas de rendimiento: pruebas de rendimiento, pruebas de carga, pruebas de estrés, pruebas de configuración, pruebas de concurrencia, pruebas de capacidad (base de datos), pruebas de confiabilidad (estabilidad del sistema), que generalmente comienzan después de que finalizan las pruebas funcionales.
Prueba de carga: Determine los umbrales de procesamiento y resistencia del
sistema mediante presurización gradual, alta presión por unidad de tiempo Prueba de esfuerzo: pruebe los cambios en el rendimiento del sistema mediante presurización gradual y verifique si el objeto bajo prueba cumple con los indicadores de rendimiento.
Prueba de capacidad: Capacidad Cuanto mayor sea el rendimiento, mejor
3. Las pruebas de rendimiento también se pueden realizar para pruebas unitarias (las pruebas orientadas a objetos son de clase), las pruebas de interfaz, los parámetros de entrada de la interfaz (front-end), los parámetros de salida (back-end) se pueden probar para el rendimiento, por lo que las pruebas de rendimiento no son todo el sistema Nivel, puede ser nivel de unidad, nivel de interfaz, los usuarios pequeños de front-end pueden usar HTTPwatch para probar.

Indicadores de desempeño y fórmulas de cálculo relacionadas

1. Rendimiento: el número de solicitudes de clientes procesadas por unidad de tiempo. Cuanto mayor es el rendimiento, más datos se procesan por unidad de tiempo y más fuerte es la capacidad de carga del sistema. Generalmente se utiliza para evaluar qué servidor es mejor para la comparación. = (El número de usuarios virtuales concurrentes, el número de solicitudes emitidas por cada VU) / el tiempo empleado en la prueba de rendimiento, en la que el número de usuarios en línea se puede calcular a través del complemento http://www.51.la
o según el principio 2-8.
Por ejemplo, el escenario de inicio de sesión del usuario: durante las horas pico de la mañana, de 8: 50-9: 10, 5000 asientos se conectan para iniciar sesión. Volumen de negocio: 5000
Tiempo: 20x60 = 1200 segundos
Rendimiento = 80% x volumen de negocio / (20% de tiempo) = 4000/240 = 16,7 / segundo en
lugar de 5000/1200 = 4,1 / segundo
2. Número simultáneo (virtual simultáneo Número de usuarios Vuser) fórmula de cálculo de concurrencia:
(1) Calcule el número promedio de usuarios concurrentes: C = nL / T
  (2) Número máximo de usuarios concurrentes: C'≈ C + 3 raíz C en la
  fórmula (1), C es el promedio La cantidad de usuarios concurrentes; n es la cantidad promedio de sesiones de inicio de sesión y cuántas personas acceden al sistema; L es la duración promedio de la sesión de inicio de sesión y cuánto tiempo es el promedio de tiempo en línea; T se refiere a la duración del período de tiempo investigado.
La fórmula (2) proporciona el método de cálculo del número máximo de usuarios simultáneos, donde C se refiere al número máximo de usuarios simultáneos y C es el número medio de usuarios simultáneos obtenido en la fórmula (1). La fórmula se estima en función del supuesto de que la sesión de inicio de sesión del usuario está de acuerdo con la distribución de Poisson.
También existe una fórmula para el número de usuarios simultáneos para un amplio rango de
C = n / 10
C ^ = r
C (normalmente r = 2 ~ 3)
normalmente el 10% del número máximo de usuarios que acceden al sistema como el número medio de usuarios simultáneos;
3. Piense en el tiempo:
piense en el tiempo, utilice la función lr_think_time () en el script para simular la situación real y puede agregarlo, y el límite de simulación se puede eliminar. El tiempo de reflexión depende completamente del comportamiento del usuario y la red del servidor.
Usuarios en línea: mantener sesiones en línea ocupará memoria Recurso
4. Tiempo de respuesta: se refiere al tiempo que tarda todo el proceso del cliente en iniciar una solicitud hasta que el cliente recibe la respuesta y el resultado devuelto por el servidor, y la información del resultado se muestra en el cliente. Tiempo de respuesta = tiempo de transmisión de red + tiempo de retardo de procesamiento del servidor de aplicaciones web + tiempo de retardo de procesamiento del servidor de base de datos + tiempo de retardo de procesamiento del cliente (desde el lado del usuario, la diferencia radica en la transmisión de la red. LR puede configurar el ancho de banda analógico) Generalmente, se usa el tiempo de respuesta promedio
5. Hits: Se calcula en base a la cantidad de solicitudes HTTP que envía el cliente al servidor web, generalmente se mide por hits por segundo. Capacidad de procesamiento del servidor
6. Contador de rendimiento (contador): algunos indicadores de datos que describen el rendimiento de los servidores relacionados o el middleware del sistema operativo.
7. Utilización de recursos: El uso de varios recursos sigue el principio del efecto de tablero corto.
8. Rendimiento de la red: Cuando la red funciona normalmente, la cantidad de datos que pasan a través de la red en una unidad de tiempo. Cuando el rendimiento de la red alcanza la capacidad máxima de transmisión del equipo de red o enlace, debe considerar actualizar el equipo de red
9. La tasa de error generalmente no es más de cinco milésimas. Por lo general, la tasa de error del sistema relativamente estable se denomina tasa de tiempo de espera provocada por las horas extraordinarias.
10. Estabilidad del sistema: (por ejemplo, para requerir 365
24 horas de funcionamiento sin problemas, se requiere esta prueba) significa que el sistema está bajo presión estándar (presión diaria vencida del sistema), Tiempo de funcionamiento estable. (Por ejemplo, la pérdida de memoria se encuentra en la prueba de cambio de tipo), al menos funcionamiento continuo durante más de 24 horas.
11. PV: No es razonable contar un PV por visita IP a la vez, y generalmente se calcula de acuerdo con IP

Elemento de guión

1. Punto de encuentro
Sincroniza usuarios virtuales para realizar tareas exactamente en el mismo momento. lr_rendezvous ("nombre de la transacción")
2. Transacción Una
transacción se refiere al tiempo que tarda el servidor en responder a la solicitud de un usuario virtual. Una transacción completa consiste en el inicio de la transacción, el final de la transacción y una o más operaciones y tareas comerciales. lr_start_transaction ("inicio de la transacción") ... lr_end_transaction ("fin de la transacción", LR_PASS) El final de la transacción debe incluir el estado de la transacción: LR_PASS (Correcto), LR_FAIL (FAIL), LR_STOP (Detener), LR_AUTO la detección automática del estado de devolución
no se puede colocar en el tiempo de pensamiento de la transacción En el interior, de lo contrario, se contará en el tiempo de ejecución de la transacción
3. El punto de control
http no tiene estado, cuando el cliente envía una solicitud al servidor, siempre que el servidor responda a la solicitud, crea que es correcta. El punto de control es buscar cadenas de texto o imágenes específicas durante la reproducción del script para verificar la exactitud del contenido de la respuesta del servidor. web_reg_find () es una función de registro (con reg). Debe colocarse antes de la página de respuesta. Después de configurar el punto de control, debe asegurarse de que la opción correspondiente en Preferencias-> Verificaciones esté seleccionada, de lo contrario no tendrá efecto.
web_reg_find: busca la cadena de texto del campo especificado en la siguiente página
HTML de respuesta web_find : busca la cadena de texto especificada
en la página HTML web_image_check: busca la imagen especificada en la página HTML web_global_verification: busca la cadena de texto especificada
en todas las interacciones HTTP posteriores
4. Asociación
Si el script es exactamente el mismo que el grabado, fallará cuando se encuentre con un servidor más inteligente durante la reproducción. La asociación transforma los datos codificados en el script en datos dinámicos como el ID de sesión y también puede parametrizar los datos extensos, que pueden asociarse manualmente, asociarse automáticamente y usarse.

Análisis de demanda y escenarios comerciales

Analizar la necesidad, la viabilidad y estar muy familiarizado con las funciones del sistema: la arquitectura del sistema, el proceso comercial, el enfoque de la función, la implementación de la red y
los requisitos de prueba de rendimiento no están claros. Cómo llevar a cabo: 1. Uso frecuente de usuarios (como inicio de sesión, registro y consulta personal) Información) 2. Los puntos de función clave del sistema, hay una gran cantidad de operaciones de datos (como interfaces de pago) 3. Hay interfaces con sistemas externos, hay una relación de llamadas mutuas, una gran cantidad de flujos de datos 4. Puede haber un riesgo (como un repentino El que alcanza el pico) Después de
determinar el punto de prueba, entréguelo al revisor superior para que lo pruebe

Después de determinar los requisitos, extraiga los puntos de prueba correspondientes e inicie la prueba (las pruebas de rendimiento generalmente no realizan análisis de anomalías, porque hay menos excepciones), y la prueba de rendimiento debe encontrar y localizar el problema.
Por ejemplo: Analice el volumen de datos (usuarios, datos de transacciones, valor máximo, concurrencia máxima, etc.), analice los puntos de prueba y determine los indicadores correspondientes.
Es mejor ejecutar el mismo caso de prueba de rendimiento tres veces y luego analizar los resultados. Solo se puede demostrar que los resultados similares son exitosos

Determine el número de concurrentes

1. Los clientes dan directamente indicadores o su propia experiencia 2. Consulta de registro del sistema pico de punto de tiempo:. Cheque con la base de datos, puede ser registro de Linux, el tráfico de red, etc.
Tiempo de respuesta: tiempo de funcionamiento el tiempo de procesamiento del servidor 2. 1. usuario (2, 5, 8, 10)

Ejemplo: El sistema requiere 200 registros de usuarios para ser completado dentro de los 5 minutos, el tiempo de respuesta no más de 3 segundos es, la tasa de éxito es 100%, y la tasa de uso de la CPU y la memoria no más de 70% es.
Primer registro y calcular el tiempo consumido para un único registro 10,86
5 60 / 10,86 = 27
200 / 27 = 8 Vuer
8
27 = 216 datos de prueba
216 * 1,2 veces = 260 datos (totalmente preparado para evitar errores causados ​​por datos insuficientes al ejecutar el script de prueba)

Consumo de recursos del sistema

1. El algoritmo de uso de la CPU tiene problemas. La tasa de uso será muy alta (la secuencia es complicada, o se llama a la interfaz API, el bucle infinito, etc.) no puede continuar en un cierto pico, como el 90%, generalmente sin exceder el 70%, de lo contrario se considerará como una
memoria de cuello de botella : Es similar al estándar de uso continuo de la CPU (la pérdida de memoria, como definir demasiadas variables globales y no liberarla, lo hará demasiado alto)
2. Ancho de banda de la red: no más del 50% del ancho de banda total
3. Disco
4, longitud de la cola de la CPU, no más de la CPU Cantidad + 1 Exceder significa bloqueo

Establecimiento de modelo de negocio

Restricciones: restricciones de datos (parametrización, creación de datos de prueba), restricciones ambientales (asociación)
análisis de procesos
comerciales diagrama de flujo comercial

Supongo que te gusta

Origin blog.csdn.net/Krystal_RonghuiLi/article/details/108001368
Recomendado
Clasificación