Pruebas de Carga: Tiempo de Pensamiento, Ritmo y Retrasos



¿Qué es el Tiempo de Reflexión en las Pruebas de Rendimiento?

El tiempo de reflexión en las pruebas de carga se refiere a la demora o pausa simulada entre acciones consecutivas de los usuarios durante una prueba de rendimiento. Representa el tiempo que un usuario pasa pensando, leyendo o estando inactivo de alguna otra manera después de completar una acción y antes de iniciar la siguiente. El tiempo de reflexión se introduce en los escenarios de prueba para hacerlos más realistas y para imitar el comportamiento natural de los usuarios reales que interactúan con la aplicación.

Por ejemplo, considere un escenario en una aplicación web de comercio electrónico donde un usuario selecciona un producto. Luego, navega a la página de exhibición del producto y se toma un tiempo para consumir y leer el contenido en esa página antes de finalmente hacer clic en el botón “Agregar al Carrito”. La duración transcurrida entre hacer clic en el producto y hacer clic en “Agregar al Carrito” se denomina tiempo de reflexión.

Cuando la gente piensa en pruebas de carga, a menudo imagina grandes cantidades de usuarios bombardeando un sitio o API simultáneamente. Aunque esta es parte de la historia, el tiempo de reflexión es igual de importante. Ayuda a simular los recorridos reales de los usuarios, como buscar productos, iniciar sesión en cuentas o completar compras. Cada acción tiene su pausa natural y considerar estas pausas en sus pruebas asegura que su aplicación esté preparada para el comportamiento real de los usuarios.

Ventajas del Tiempo de Reflexión

  • Realismo: Incluir tiempo de reflexión replica el comportamiento natural de los usuarios que no interactúan con un sistema de manera continua. Esto mejora el realismo de los escenarios de pruebas de carga, haciéndolos más representativos de las experiencias reales de los usuarios.
  • Precisión en la Simulación de Usuarios: El tiempo de reflexión ayuda a simular con precisión el comportamiento del usuario durante el proceso de prueba. Los usuarios generalmente pasan tiempo leyendo contenido, tomando decisiones o contemplando acciones, y el tiempo de reflexión permite simular estas pausas naturales.
  • Rendimiento: El tiempo de reflexión libera recursos en la máquina del Servidor de Ejecución entre solicitudes. Esto permite que otros Usuarios Virtuales (VUs) en el Servidor de Ejecución envíen sus solicitudes, evitando que la máquina del Servidor de Ejecución experimente restricciones de E/S.
  • Mejora en la Resolución de Problemas: Los escenarios realistas con tiempo de reflexión ayudan a detectar cuellos de botella en el rendimiento que pueden no ser evidentes en escenarios sin pausas. Ayuda a descubrir problemas relacionados con sesiones de usuario, gestión de sesiones y la capacidad de respuesta general del sistema.

Cuándo Usar los Tiempos de Reflexión

Incorporar tiempos de reflexión en su prueba de carga puede ser difícil porque cada usuario es diferente. Por el lado positivo, los tiempos de reflexión pueden ser flexibles y debe considerar un rango para sus valores de tiempo de reflexión. Por ejemplo, algunos usuarios pueden tardar más en leer o ingresar datos en un formulario que otros.

Deberá incorporar tiempo de reflexión entre estas acciones para replicar de manera más precisa la duración desde que una persona recibe una respuesta del servidor hasta el momento en que la persona solicita una nueva página. Su tiempo de reflexión dependerá de sus escenarios de usuario y debe determinar sus rangos de valores de tiempo de reflexión utilizando datos de su sitio web o aplicación. Querrá determinar la mediana del tiempo que los usuarios pasan en sus páginas.

 

¿Qué es el Ritmo (Pacing) en las Pruebas de Rendimiento?

El ritmo se usa en pruebas de carga para asegurar que la prueba se realice a la tasa de transacciones por segundo prevista. Es el intervalo de tiempo entre cada iteración completa del flujo de negocio. Esto ayuda a regular la cantidad de solicitudes enviadas al servidor por segundo.

 

La Importancia de Introducir Demoras en las Pruebas de Carga

Probar el rendimiento de la aplicación antes de su lanzamiento general ayuda a prevenir inconvenientes potenciales para los usuarios finales, como tiempo de espera agotado, respuestas lentas de página y caídas del sistema. Para asegurar resultados realistas y descubrir cualquier problema, es esencial incorporar tiempo de reflexión y ritmo en el diseño de los escenarios de prueba.

Por ejemplo, cuando introducimos tiempo de reflexión entre cada acción concurrente del usuario, el servidor utiliza esta demora para atender tareas pendientes en la cola. Ejecuta la siguiente tarea antes de revisar la anterior. Esto refleja de cerca el escenario típico de producción con usuarios reales. Además, incorporar tiempo de reflexión extiende el tiempo que el usuario pasa en la aplicación, revelando cualquier problema relacionado con la capacidad del servidor para manejar usuarios concurrentes de manera efectiva.

Cálculo de las Demoras para Probar Aplicaciones

El número de usuarios virtuales concurrentes, demoras y transacciones por segundo (TPS) varía para cada aplicación. Para calcular cuáles deberían ser las demoras para su aplicación, puede usar la siguiente fórmula:

  • Duración de la prueba de carga (en segundos) * (TPS + Demoras) * Cantidad de Usuarios Concurrentes = Total de Transacciones

Por ejemplo, consideremos generar 100,000 transacciones con un tiempo de respuesta de 5 segundos cada una durante una prueba de 10 minutos (600 segundos). Para determinar los usuarios concurrentes necesarios con un tiempo de reflexión de 3 segundos, use la fórmula: 100,000 / (8 * 10 * 60), resultando en aproximadamente 21 usuarios. Este enfoque ayuda a identificar las demoras necesarias y la cantidad de usuarios para pruebas de carga efectivas.

Configuración de Demoras en Pruebas de Carga con LoadView

LoadView le proporciona el Grabador Web EveryStep, que facilita la creación de escenarios de prueba grabando las acciones del usuario en un navegador. Replica fielmente los pasos del usuario, capturando puntos de datos como selectores, acciones y demoras. Durante la creación de su escenario de prueba, es esencial emular su recorrido auténtico de usuario, incluyendo los tiempos de reflexión. Después de la grabación, la herramienta genera un script que puede ejecutarse nuevamente con el número especificado de usuarios concurrentes. El script es personalizable, permitiendo a los usuarios modificar y actualizar las demoras para pasos individuales según sea necesario para las pruebas, como se muestra en la imagen abajo. Explore más sobre cómo editar scripts del Grabador Web EveryStep.

El enfoque óptimo para lograr resultados precisos en una prueba de carga implica crear un script que simule interacciones reales de usuario con la aplicación y capture el recorrido del usuario.

Add Delays to Script

Con LoadView, también tendrá la opción de modificar el comportamiento del usuario durante la prueba de carga. Como puede ver en la imagen a continuación, puede elegir Retraso Normal o Retraso Personalizado para establecer comportamientos y demoras específicos para sus aplicaciones.

Adjust User Behavior

Conclusión: Tiempo de Reflexión, Ritmo y Demoras

Realizar pruebas de rendimiento en su aplicación es crucial antes de su despliegue en producción. La efectividad de este proceso para identificar problemas relacionados con el rendimiento depende de seguir las mejores prácticas y desarrollar escenarios de prueba que abarquen acciones reales de los usuarios dentro de su aplicación.

Este artículo exploró la importancia del tiempo de reflexión, el ritmo y las demoras en las pruebas de carga. Al incorporar estos elementos en sus diseños de pruebas de carga, se pueden detectar problemas como agotamientos de tiempo en páginas, respuestas lentas, discrepancias en los tiempos de respuesta y errores del servidor con anticipación, incluso bajo cargas altas. Adoptar estas estrategias contribuye al desarrollo de aplicaciones y sitios web responsables y confiables. LoadView puede ayudar a simplificar este proceso y usted puede incorporar fácilmente tiempo de reflexión, ritmo y demoras en sus escenarios de prueba de carga para aprovechar al máximo sus esfuerzos de prueba. Cuando se registre en LoadView hoy, obtendrá todos los beneficios de las pruebas de carga que ofrece la plataforma y podrá realizar sus primeras pruebas iniciales de forma gratuita.

Lleva tus pruebas de usuarios concurrentes al
Siguiente Nivel

Experimenta características inigualables con escalabilidad ilimitada. Sin tarjeta de crédito, sin contrato.