Las pruebas de carga son una de las formas más cruciales de pruebas de rendimiento. Su propósito principal es entender cómo se comporta un sistema bajo una carga prevista. Las aplicaciones web de bajo rendimiento pueden dañar su negocio, los ingresos, la tasa de conversión, la tasa de rebote y la reputación. Comprender las horas o los períodos de tiempo más ocupados para su negocio y prepararse para ese tipo de carga en su sistema mientras automatiza todo el proceso puede ser engorroso. Para satisfacer ese requisito no funcional de servir a los usuarios, su sitio web, aplicaciones, servicios web o API en menos de segundos, es esencial para aumentar la tasa de conversión al tiempo que reduce las tasas de abandono. Probar el sistema en un gran número de usuarios simultáneos e investigar el punto de interrupción, o cuello de botella (CPU, asignación de memoria o red), del software y el hardware en el que está instalado, proporciona a las empresas una gran información para mejorar sus tiempos de servicio. Las pruebas de carga no siempre tienen que iniciarse después de la versión mínima viable del producto. Si se inicia en un módulo o función en los primeros tiempos de desarrollo, tiene mucho que ofrecer en términos de disminución de los riesgos antes de lanzar.
Pruebas de carga para diferentes interfaces web
Herramientas como Pagespeed o herramientas para desarrolladores pueden dar una visión limitada de cómo se comporta tu sitio web para una solicitud específica. La plataforma LoadView es un excelente activo en su caja de herramientas para comprender dónde existen cuellos de botella para que pueda solucionarlos rápidamente.
Sitios web de pruebas de carga
Esta opción es adecuada para probar una sola página web para usuarios simultáneos. El campo URL es la página web que se va a probar la carga. Se pueden seleccionar diferentes tipos de navegadores (Chrome, Firefox, Internet Explorer para escritorio – iOS, Android, Windows Phone y Blackberry para móviles).
Pruebas de carga de aplicaciones web
Usuarios simultáneos que realizan una serie de acciones con scripts en Chrome. Con esta opción, las aplicaciones web se pueden probar para crear scripts pregrabados y alimentar este script para cargar la aplicación.
Por ejemplo, una funcionalidad de pago de cesta de comercio electrónico se puede probar fácilmente mediante un script pregrabado. Los pasos que debe seguir son los siguientes:
1) Introduzca una URL de inicio (página de inicio, página del producto, página de resultados de búsqueda, etc.)
2) Tipo de dispositivo de usuario (móvil o de escritorio)
3.a) Si se trata de un dispositivo de escritorio, se debe seleccionar el tipo de navegador (Explorador de Internet, cromo)
3.b) Si se trata de un dispositivo móvil, se debe elegir el tipo de dispositivo (de una amplia variedad de dispositivos móviles)
4) Resolución a grabar (para el tipo de dispositivo móvil, los modos horizontal o vertical están disponibles)
Con todos los campos obligatorios introducidos, al hacer clic en el botón Grabar ahora se inicia la sesión de grabación. Navega a la URL de inicio y le permite interactuar con el sitio web. A partir de ahora, puede simular un comportamiento de usuario, como buscar un producto del sitio, agregarlo a la cesta y pasar a la página de pago.
Después de simular todos los pasos deseados, al hacer clic en Detener se detiene el script.
Puede continuar grabando el script desde donde lo dejó usando el botón “continuar grabando” o guardar el script haciendo clic en reproducir ahora. Como indica la captura de pantalla, los scripts grabados deben reproducirse al menos una vez para comprobar si hay errores antes de guardarlos. Después de reproducir el script grabado una vez, una ventana emergente indica que todo está en su lugar, y las interacciones que se guardaron como un script se jugaron correctamente. Por lo tanto, podemos proceder a salvarlo.
Los ajustes de grabación de scripts se guardan y ahora podemos pasar a ajustes adicionales del dispositivo.
Aquí puede configurar varios ajustes adicionales para su dispositivo.
Tiempo de espera de finalización:si el script se bloquea en algún lugar del plan de ejecución, una cantidad fija de tiempo de espera de finalización permitirá que el script produzca un error.
Anular script en el primer error:si esta opción se establece en yes, el script se anulará en el primer error. De lo contrario, volverá a intentar el paso que no pudo realizar.
Opciones de DNS:con esta opción, puede crear un nombre de dominio personalizado: asignaciones IP, lo que es ideal para probar código en desarrollo.
API de pruebas de carga
De forma similar a la opción de sitio web, hay un campo de dirección URL, donde debe especificar el punto de conexión de la API que se va a probar la carga. Http o HTTPS se pueden seleccionar para el protocolo.
Configuración adicional del dispositivo para las pruebas de carga de API:
1. Tiempo de espera de finalización:Si la solicitud tarda más de la cantidad introducida de segundos, se producirá un error.
2. Tipo de solicitud:Todos los métodos de solicitud http se pueden probar( GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS,TRACE,PATCH)
3. Comprobación SSL/Certificado. Para una tarea HTTP, hay varias opciones SSL disponibles:
3a. Autoridad:si el certificado raíz es de confianza o no
3b. Nombre común (CN):comprueba o no las coincidencias de nombre común de URL y certificado
3c. Fecha: comprueba la fecha de caducidad del certificado
3d. Revocación:comprueba si la cadena SSL tiene un certificado revocado o no.
3e. Uso: comprueba si existe un uso indebido de un certificado intermedio
3f. Los certificados de cliente se pueden instalar en un agente de supervisión.
4. Validación de contenido:El contenido se puede buscar para palabras clave específicas y configurarse para producir un error si no se cumplen las especificaciones requeridas. Muchas palabras clave se pueden agrupar utilizando operadores lógicos: ?[(«keyword1» & keyword2) ? !« keyword3»]-
5. Autenticación básica: autenticaciónbasada en nombre de usuario y contraseña
6. Encabezados:Se pueden establecer encabezados personalizados para la solicitud de API. (Nombre del encabezado – Valor)
7. Opciones dns:Asigne nombres de host personalizados a direcciones IP específicas mediante la opción DNS.
Servicios SOAP de pruebas de carga
Con este dispositivo, puede cargar servicios web basados en XML de prueba. Campos de entrada similares, como el dispositivo de la API REST, están presentes.
URL: Url del servicio SOAP.
Acción SOAP: Este campo se puede utilizar para indicar la intención de la solicitud. El URI traduce la cadena vacía “” a medida que el URI proporciona la intención del mensaje SOAP. Ningún valor se traduce como ninguna intención para la solicitud.
Autenticación básica:autenticación basada en nombre de usuario y contraseña para el servicio web SOAP.
Encabezados:Los encabezados personalizados se pueden enviar mediante un par clave-valor.
Validación de contenido:el contenido se puede buscar mediante palabras clave.
Opciones DNS:
1. Dispositivo almacenado en caché: La caché del dispositivo se utilizará para la resolución de DNS. Esta información de caché se recupera de la tarea anterior.
2. No almacenado en caché: cada ejecución consultará a los servidores DNS.
3. TTL almacenado en caché: Si a la memoria caché del dispositivo le falta la dirección necesaria, se utilizará el servidor DNS local.
4. Servidor DNS externo: La dirección IP dada se tratará como un servidor DNS.
Configuración de pruebas de carga
LoadView ofrece tres formas diferentes de establecer la curva de carga que el sistema va a encontrar. Estas diferentes opciones proporcionan una gran capacidad de personalización para varios casos de uso complejos para experimentar.
Curva de paso de carga
Las curvas de paso de carga son ideales para probar la cantidad sin procesar de usuarios. Puede aumentar, disminuir o retener a un número de usuarios durante la cantidad deseada de minutos.
Curva basada en objetivos
En lugar de establecer el número predeterminado de usuarios simultáneos, una curva basada en objetivos ayuda a establecer el número de usuarios para alcanzar una cantidad de transacción/objetivo por minuto. Estas transacciones pueden ser la generación de clientes potenciales, pedidos de cesta, acciones de registro, etc.
Curva ajustable dinámica
Al establecer un punto de inicio y un valor máximo, puede moverse entre números de usuarios simultáneos mientras se ejecuta la prueba. Esto es lo mismo que dibujar un gráfico con una herramienta a mano alzada. La opción de curva ajustable dinámica incluso responde a los casos de uso más complejos y a los picos de carga en los que pueden incurrir estos estados.
Carga de carga del inyector
Esta configuración decide el número de usuarios por inyector de carga. El número recomendado se puede ajustar con el botón de calibración.
Load Injector Geo Distribution
Se pueden establecer diferentes ubicaciones geográficas para diferentes inyectores de carga. Esto ayuda a probar el sistema utilizando diferentes solicitudes de varias ubicaciones. La plataforma LoadView le permite elegir entre más de 15 ubicaciones en todo el mundo.
Comprender los resultados de las pruebas de rendimiento
En la sección de informes, se puede encontrar información gráfica adicional sobre las pruebas de carga.
En el gráfico del plan de ejecución, puede investigar si la prueba de carga se ejecutó según lo esperado o no. Por ejemplo, en el gráfico anterior, después de la marca de 30 segundos – 1 minuto, podemos ver que el número real de usuarios no pudo golpear a nueve usuarios por alguna razón. El número máximo de usuarios se logró después de la marca de 4 minutos y 30 segundos.
Plan de ejecución
El gráfico de tiempo de respuesta promedio es ideal para comprender cómo se comporta el sistema bajo diferentes cargas. En esta prueba, podemos ver que el tiempo de respuesta del sistema probado aumentó dramáticamente en la marca de 0-30 s. (50 segundos, indica un cuello de botella) Después del primer tiempo medio de respuesta fue de alrededor de 10 segundos, lo que es bastante lento para las expectativas de los usuarios hoy en día (todos los sitios web deben apuntar menos de 2 segundos para la tasa de rebote mínima y la tasa de conversión máxima).
Tiempo medio de respuesta
Recuento de sesiones acumulada
Recuento de sesiones acumulativas a lo largo del curso de pruebas de carga. Del gráfico anterior, se puede deducir el número total de sesiones que el sistema puede manejar. En este caso, después de 150-200 sesiones, algunas sesiones nuevas no se pudieron iniciar y generaron un error.
Servidor de referencia
En la pestaña Informe de sesión, puede filtrar las sesiones para incluir solo el inyector de carga de referencia. Este inyector de carga de referencia excluye la tensión de hardware (solo ejecuta un usuario virtual) durante la ejecución de prueba para que pueda compararla con las versiones muy cargadas.
Después de filtrar las sesiones de inyector de carga de referencia, puede reproducir el vídeo de ejecución para comparar los inyectores de carga y el usuario de referencia mediante el botón de vídeo.
Gráficos de cascada
Por último, los gráficos de cascada proporcionan un conocimiento profundo sobre su interfaz web y cuellos de botella. Por ejemplo, un sitio web consta de solicitudes de archivos realizadas al servidor web (archivos CSS, archivos JavaScript, archivos HTML, etc.). Usando el gráfico de cascada, podemos entender qué solicitud es el factor de bloqueo, aumentando la velocidad de carga. Eliminar el elemento de bloqueo, hacer las solicitudes asincrónicas o cargar solo el CSS crítico primero, y luego el resto del CSS después puede disminuir el tiempo de carga.
Comprender estos factores de bloqueo en la etapa inicial de desarrollo o lanzamiento puede ahorrar una cantidad significativa de presupuesto y tiempo, lo que resulta en una mejor gestión del tráfico y la capacidad. Para obtener información más detallada sobre los gráficos de cascada, lea nuestro artículo de blog sobre la optimización del rendimiento web mediante la comprensión de los gráficos de cascada.
Conclusión: Resumen de pruebas de carga y descripción de informes y gráficos de cascada
Si su sitio web o aplicación está sujeto a un acuerdo de nivel de servicio (SLA), las pruebas de carga se convierten en una necesidad para mostrar a sus clientes que el software está listo para la cantidad de carga esperada. Por ejemplo, si ya tiene un objetivo de transacción predeterminado o conoce (aproximadamente) el número de visitantes que espera en su sitio web o aplicación durante un período de tiempo específico, la ejecución de una prueba de curva basada en objetivos le ayudará a confirmar que su sitio o aplicación cumple los requisitos predefinidos.
Además, generar una mayor carga en sitios web o aplicaciones puede ayudar a predecir el rendimiento de las aplicaciones para una carga de usuarios más pesada en el futuro. Esto se realiza normalmente con fines de planificación de capacidad. Los resultados de las pruebas de carga pueden ayudarle a determinar los elementos individuales que necesitan atención inmediata. Además, LoadView mantiene los resultados de las pruebas anteriores para que se puedan usar como puntos de referencia con respecto a las nuevas métricas de rendimiento después de realizar cambios en el sitio o la aplicación.
¡Pruebe LoadView hoy! ¡Regístrate y recibe hasta 5 pruebas de carga gratis!