Una aplicación de una sola página (SPA) es una aplicación web de URL única que se ejecuta completamente en un explorador web. Aquí hay algunas cosas que usted debe considerar antes de elegir la aplicación correcta para las pruebas de carga SPA.

Uno de los primeros elementos a tener en cuenta es que la lógica SPA depende en gran medida de la tecnología JavaScript. Cada vez que un usuario hace clic en un botón o realiza cualquier otra acción en la página web (navegar entre pestañas, rellenar formularios web, etc.), un navegador ejecuta JavaScript y representa la página web.

En segundo lugar, la autenticación en un SPA implica encabezados HTTP que llevan credenciales de acceso (por ejemplo, tokens web JSON). Los tokens de acceso son proporcionados por un servidor SPA para cada sesión. Cuando un navegador ejecuta las llamadas HTTP, extrae el token de la respuesta del servidor SPA y lo pasa de nuevo con cada petición HTTP.

Estos rasgos lógicos SPA ponen limitaciones en las pruebas SPA con las aplicaciones tales como JMeter. JMeter NO es un navegador y funciona en el nivel de protocolo. JMeter permite emular las solicitudes web SPA al servidor sin probar la propia aplicación. Sin embargo, la creación de cualquier solicitud para operar con datos de usuario en la página requiere los conocimientos correspondientes en el desarrollo web. Por ejemplo, para iniciar sesión en un SPA, usted necesita autenticar las llamadas del cliente por cada sesión. De lo contrario, el rendimiento de la página no se puede probar con precisión.

Por otro lado, LoadView funciona como un navegador real y admite la lógica de ejecución y autenticación de JavaScript en el nivel de explorador. Todo lo que usted necesita hacer es secuenciar las acciones del usuario en la página SPA usando el grabador incorporado y configurar un patrón de carga. ¡Es tan simple como eso!

La prueba se realizará en un navegador real (las opcionesde Chrome o Internet Explorer están disponibles) para simular la experiencia real del usuario y proporcionar resultados de prueba realistas.

 

Para obtener más información sobre las pruebas de carga de aplicaciones web, consulte Introducción a la instalación de pruebas de carga y Configuración de la tarea de aplicación web.

Casos de uso común

Para mostrar la naturaleza de las pruebas SPA, consideremos un escenario de prueba que repita el proceso de cambiar los datos del usuario en la página de los usuarios del menú de las configuraciones de la cuenta de Dotcom-Monitor. La página es un ejemplo típico de un SPA.

Puesto que la página Usuarios está autenticada, necesitamos iniciar sesión en la aplicación antes de probar la página. Las pruebas de inicio de sesión pueden ser complicadas sin un navegador debido a los rasgos de autenticación SPA descritos antes.

En función de los resultados de autenticación, se carga el contenido de la página. En general, todos los datos, incluida la interfaz de usuario, se procesan en el back-end y se entregan en HTML. Por lo tanto, para recibir los datos, las solicitudes GET deben enviarse a la dirección URL de la página. Sin embargo, cuando se trata de SPA, no hay datos en la respuesta del servidor excepto scripts JavaScript. Encuentre la fuente de la página en la imagen de abajo.

En comparación con la respuesta del servidor, echemos un vistazo a los elementos de página representados por el explorador. El explorador representa el contenido de la página dinámicamente, incluidos los datos de usuario, los encabezados, el panel de menús y la cuadrícula de lista de usuarios. Dado que los elementos de la interfaz de usuario no se incluyen en el HTML y solo se representan mediante el explorador, no se pueden probar sin la ejecución de JavaScript.

Por ejemplo, el controlador de cuadro de diálogo Editar usuario ya está incluido en la respuesta inicial del servidor y no se ejecuta ninguna llamada adicionalmente. La comprobación de si el cuadro de diálogo emergente se representa correctamente requiere una ejecución de script relacionada y no se puede realizar mediante solicitudes HTTP.

Busque el ejemplo de solicitudes que se envían al servidor al editar los datos de usuario.

En conclusión, si desea probar el rendimiento spa, una solución de prueba de carga basada en explorador real, como LoadView,puede proporcionarle resultados completos de las pruebas de carga.