Las pruebas de carga HTTP han sido una práctica para realizar pruebas de rendimiento para servicios web, de aplicaciones y web para planificar, preparar y tomar decisiones informadas sobre la infraestructura de aplicaciones. Pero con pilas de tecnología en constante evolución y contenido interactivo, ¿es suficiente la forma tradicional de realizar pruebas de carga HTTP para cubrir todas sus bases? La respuesta corta es no. Para diseñar la respuesta de una manera elaborada para comprender el enfoque moderno para las pruebas de carga HTTP y cómo hacerlo, comencemos con los conceptos básicos.

 

Páginas estáticas frente a páginas dinámicas

Las páginas web estáticas son la forma más sencilla de recursos del sitio web que lo iniciaron todo. Están escritos en HTML básico, CSS y JavaScript. No hay cambios significativos en estas páginas hasta que realice cambios manuales y no se requiere ningún procesamiento o computación para estas páginas desde el extremo del servidor. Estas páginas se representan mediante el explorador con solicitudes básicas y mecanismos de respuesta. El explorador envía la solicitud, y el servidor responde sin hacer nada adicional, aparte de devolver el código HTML precompilado. Algunos ejemplos son páginas de blog, páginas de documentación, sitios web personales, etc.

Por otro lado, las páginas dinámicas proporcionan recursos y elementos interactivos para cada solicitud posterior del usuario. Algunas de las tecnologías más comunes hoy en día para la creación de páginas dinámicas son AJAX, AngularJS, VueJS, ReactJS,etc. El contenido de la página dinámica se genera en función de diferentes factores y casos de uso, como el tiempo, la región, el perfil de usuario, etc. Algunos ejemplos de estos son las redes sociales, el comercio electrónico, los sitios web de juegos, los sitios web de streaming y otras aplicaciones modernas.

 

Evolución de la aplicación moderna con páginas dinámicas

Continuando nuestra discusión desde páginas estáticas y páginas dinámicas, vamos a entender las capacidades y el comportamiento de las aplicaciones modernas.

 

Cambios en tiempo de ejecución

Las páginas estáticas no se cambian en tiempo de ejecución, mientras que las aplicaciones modernas cambian el contenido en función de los distintos factores de generación de perfiles.

 

Interacción

Mientras que las páginas estáticas tienen poca o ninguna interacción basada en clics, las aplicaciones modernas tienen una variedad de funciones interactivas, desde juegos hasta reproductores de vídeo y comercio electrónico.

 

Modular

Las páginas estáticas son las mismas cada vez, en todas partes y para todos. Las páginas dinámicas pueden agregar varios servicios y características en función de la interacción del usuario y las transacciones del usuario.

 

Servicios de terceros

Las aplicaciones modernas hacen un uso intensivo de servicios de terceros que, a su vez, se pueden cambiar y acceder dinámicamente.

 

Arquitectura

Las aplicaciones estáticas emplean la forma más sencilla de solicitudes HTTP GET/POST. Por el contrario, las solicitudes y respuestas de aplicaciones modernas tienen varios servicios construidos uno encima del otro, como autenticación, VPN, colaboración en tiempo real, etc.

 

El auge de las aplicaciones de una sola página

Las aplicaciones de una sola página (SPA) son ahora la forma más popular y ampliamente utilizada de desarrollar aplicaciones para minimizar o incluso eliminar la navegación del usuario de una página a otra. Toda la representación de contenido y las transacciones se realizan en la misma página calculando en gran medida las cosas en el propio explorador, en lugar de que el servidor entregue el código HTML listo para usar.

Los SPA han transformado la forma en que los sitios web solían funcionar haciendo el trabajo pesado en el navegador en una sola página. Y con esto, viene el desafío para las pruebas de carga HTTP, ya que las herramientas de prueba de carga HTTP tradicionales no son capaces de representar y realizar computación basada en navegador. Esto requiere nuevos métodos de pruebas de carga HTTP para aplicaciones dinámicas, especialmente SPA.

 

Desafíos de las pruebas de carga HTTP: MOS de prueba de carga

Con un uso extensivo de páginas dinámicas, los SPA presentan un nuevo desafío para las pruebas de carga HTTP para crear el entorno de carga más realista. A continuación se muestran los puntos fundamentales que hacen que las pruebas de carga HTTP tradicionales sean cosa del pasado.

 

Pruebas de carga basadas en navegador real

Como hemos discutido, los SPA dependen del cálculo pesado de HTML por parte del navegador mediante JavaScript en lugar del servidor. Esto cambió drásticamente la interacción entre clientes y servidores. Para generar de forma eficaz y correcta la carga GET/POST para la aplicación, debe utilizar herramientas que simulen usuarios de prueba de exploradores reales.

 

Pruebas de carga basadas en la ubicación

Lo más probable es que las SPA factoricen los datos basados en la ubicación para personalizar el contenido. Por ejemplo, el comercio de divisas o locales junto con el variado rendimiento de las transacciones. Las pruebas de carga reales basadas en exploradores desde varias ubicaciones generarían una carga realista para la aplicación para optimizar el rendimiento de la ubicación geográfica.

 

Pruebas de carga basadas en transacciones

La asignación de acciones de usuario con scripts para acciones individuales y acciones basadas en parámetros es una parte vital de los SPA de pruebas de carga. Por ejemplo, es un sitio web de comercio electrónico y desea generar una carga realista para él, desea cargar páginas con filtros y combinaciones de clasificación para ver cómo afectará el rendimiento de su sitio web para el alto tráfico.

 

Pruebas de carga de RIA

Sus SPA van a evolucionar según los requisitos de su negocio. Un día tendrías contenido de video, y otro día tendrías un concurso de votación. Si se trata de una aplicación de juegos, entonces todo tipo de interacciones de usuario y representación. La solución de pruebas de carga debe ser capaz de probar prácticamente cualquier cosa que se pueda representar y ejecutar en el explorador.

 

 

Por qué las pruebas de carga HTTP no son suficientes: pruebas de carga de aplicaciones modernas y dinámicas

Las pruebas de carga HTTP tradicionales no son capaces de generar una carga realista basada en estos factores y requisitos. Estos desafíos requieren un enfoque nuevo e integral para combinar todo de una manera holística para producir la carga más realista. Los SPA a menudo incluyen nuevas formas innovadoras de hacer las cosas y resolver problemas para los usuarios con tecnología de varias capas y tecnologías RIA. Por lo tanto, lo que hace que las pruebas de carga HTTP tradicionales sean difíciles de cumplir con el propósito de prueba. Para resolver este problema, necesita una plataforma que le permita registrar transacciones e interacciones reales en navegadores reales y desde varias ubicaciones. La facilidad de grabación de estas transacciones y secuencias de comandos también desempeña un papel vital en la selección de dicha plataforma; de lo contrario, perdería su tiempo de scripting en lugar de pruebas de carga HTTP reales.

LoadView viene con EveryStep Web Recorder para crear escenarios de pruebas de carga con un simple punto y haga clic en scripting que le permite ir en poco tiempo. Con LoadView, también puede probar usuarios de exploradores reales desde varias ubicaciones para comprobar que la aplicación se está ejecutando correctamente y que sirve contenido preciso bajo estrés sin retrasos ni cuellos de botella. La combinación de EveryStep Web Recorder con la plataforma LoadView crea una plataforma de pruebas de carga tan completa que puede averiguar de forma proactiva todo lo necesario para que los SPA funcionen de forma coherente y correcta en todos los casos de uso de pruebas de carga.

¡Pruebe la plataforma LoadView hoy mismo y reciba $20 en créditos de pruebas de carga para comenzar!