Este blog ha sido coautoría de Ashish Shah, director asociado de ingeniería, experiencia para desarrolladores de Azure.
Anunciamos la disponibilidad general de Azure Load Testing. Azure Load Testing es un servicio de pruebas de carga totalmente administrado que permite generar una carga a gran escala, obtener información procesable y garantizar la resistencia de las aplicaciones y los servicios independientemente de dónde se hospeden. Los desarrolladores, evaluadores y equipos de ingeniería pueden usarlo para optimizar el rendimiento, la escalabilidad o la capacidad de las aplicaciones.
Empiece a trabajar con Azure Load Testing ahora mediante la creación rápida de una prueba de carga para la aplicación web mediante una dirección URL. Si ya tiene pruebas de carga que aprovechan JMeter, puede empezar fácilmente mediante la reutilización de scripts de prueba de Apache JMeter existentes.
Creación de pruebas de resistencia en flujos de trabajo de desarrollador
Nuestro objetivo en Microsoft es ayudar a los desarrolladores a hacer más con menos esfuerzo. Cuando se identifican problemas de rendimiento, escalabilidad o resistencia en producción o incluso cerca de la producción, pueden ser extremadamente difíciles y costosos de resolver. Con los desarrolladores de Pruebas de carga de Azure pueden detectar problemas más cercanos al tiempo de creación de código como parte de sus flujos de trabajo para desarrolladores, lo que les ahorra tiempo y energía valiosos.
"Como parte de nuestras iniciativas de cambio de calidad a la izquierda, los equipos de Cloud Ecosystem Security pudieron evitar que varios errores relacionados con la carga única lleguen a producción mediante la administración de compilaciones de producción mediante Azure Load Testing como parte de nuestra canalización de CI/CD. Los equipos de servicio también han combinado la carga de Azure Load Testing con escenarios de inyección de errores de Azure Chaos Studio para replicar, la causa principal y evitar escenarios de rutas de acceso no felices que son difíciles de detectar mediante marcos de pruebas normales. Junto con la validación de resistencia del servicio, Azure Load Testing ha ayudado a descubrir los límites del sistema distribuido y a ahorrar costos eliminando los recursos y marcos sin usar". -Equipo de ingeniería de Seguridad del ecosistema en la nube de Microsoft
"El equipo de Azure Synapse usa Azure Load Testing para generar distintos niveles de cargas de trabajo de alta simultaneidad a una ejecución secuencial de datos de entrada grande dirigida a puntos de conexión sin servidor de Synapse SQL. Con la flexibilidad de JMeter, podemos iniciar o detener otros servicios dentro de un clúster que pueden insertar errores diferentes, lo que realmente prueba la resistencia de nuestro servicio". -Equipo de ingeniería de Microsoft Azure Synapse
Pague solo lo que necesite
Optimice la infraestructura al tiempo que garantiza que la aplicación y los servicios son resistentes a los picos graves en el tráfico de los clientes. Aproveche Azure Load Testing para optimizar la infraestructura antes de la producción, planear el tráfico del cliente que espera, pagando solo por lo que necesita. A continuación, aproveche Azure Load Testing para probar los aumentos no planeados en la carga.
![Image of Azure Load Testing service Create Test dialog and the Load tab which provides the ability to scale your load test with an easy slide bar to control the Engine instances.](https://azure.microsoft.com/en-us/blog/wp-content/uploads/2023/02/298db76b-2215-4893-8281-b68e55c5e9dd.webp)
Figura 1: Escalado sencillo de la carga en Azure Load Testing para comprobar la resistencia de las aplicaciones y los servicios.
Pruebas de regresión
En el caso de las aplicaciones basadas en Azure, Azure Load Testing recopila métricas detalladas de recursos que le ayudarán a identificar cuellos de botella de rendimiento en los componentes de la aplicación de Azure. Puede automatizar las pruebas de regresión mediante la ejecución de pruebas de carga como parte del flujo de trabajo de integración continua e implementación continua (CI/CD).
![High level diagram of how Azure Load Testing service can be integrated into developer's CI/CD workflow.](https://azure.microsoft.com/en-us/blog/wp-content/uploads/2023/02/e672d0df-9af6-4f65-8155-31bd667e7afc.webp)
Figura 2: Compilación de pruebas de carga en el flujo de trabajo del desarrollador con criterios de paso o error.
Información específica de Azure puede ayudarle a comprender cómo afectan los distintos escenarios de carga a todas las partes de la aplicación y puede comparar los resultados de las pruebas de prueba en diferentes pruebas de carga para comprender los cambios de comportamiento a lo largo del tiempo.
Azure Load Testing crea datos de supervisión mediante Azure Monitor, incluidos Application Insights y Container Insights, para capturar detalles de los servicios de Azure. En función del tipo de servicio, hay diferentes métricas disponibles. Por ejemplo, el número de lecturas de una base de datos, el tipo de respuestas HTTP o el consumo de recursos de contenedor. Las métricas del lado cliente y del lado servidor están disponibles en el panel de Azure Load Testing.
![Image of an example Azure Load Test run with dashboard views of client-side metrics captured during the load test; Virtual Users (Max), Response time (successful responses), Requests/sec (Avg), and Errors (total).](https://azure.microsoft.com/en-us/blog/wp-content/uploads/2023/02/73a0bc12-c40f-44b4-8888-8524ec5d15d0.webp)
Figura 3: Obtención de información de rendimiento entre las métricas del lado cliente y del servicio de Azure con Azure Load Testing.
Habilitación de escenarios de pruebas de carga avanzadas
Para escenarios de pruebas de carga más avanzados, puede crear una prueba de carga basada en JMeter, una conocida herramienta de carga y rendimiento de código abierto. Por ejemplo, el plan de prueba puede constar de varias solicitudes de aplicación o datos de entrada y parámetros para que la prueba sea más dinámica. Y si ya tiene scripts de prueba de JMeter existentes, puede reutilizarlos para crear pruebas de carga con Azure Load Testing.
![Image of Azure Load Testing architecture overview. Demonstrates how the Azure Load Test creation and execution interacts with Application and the Azure service dependencies sending metric details to Azure Monitor.](https://azure.microsoft.com/en-us/blog/wp-content/uploads/2023/02/6b8f8f2a-29db-499d-b869-072b3094735b.webp)
Figura 4: Introducción a la arquitectura de Azure Load Testing.
¿Qué ha cambiado desde la versión preliminar?
Como debutamos en Azure Load Testing, hemos habilitado varias funcionalidades nuevas en función de los comentarios de los clientes.
Creación rápida de pruebas
- Creación rápida de pruebas de carga de Azure con dirección URL. La creación rápida de pruebas le permite crear una prueba de carga sin un script de JMeter, lo que le permite configurar, ejecutar y probar la dirección URL en menos de cinco minutos.
Bibliotecas de pruebas de carga del SDK de Azure
- Biblioteca de pruebas de carga de Azure de .NET
- Biblioteca de pruebas de carga de Azure de Java
- Biblioteca de pruebas de carga de Azure de JavaScript
- Biblioteca de pruebas de carga de Azure de Python
Funcionalidades de JMeter
- Compatibilidad con las propiedades de JMeter especificadas por el usuario. Compatibilidad con las propiedades de JMeter especificadas por el usuario, lo que hace que las pruebas de carga sean más configurables.
- Dividir los datos de entrada entre varios motores de prueba. Si usa datos CSV en el script de JMeter, puede procesar los datos de entrada en paralelo en varios motores de prueba. Azure Load Testing permite configurar una prueba para dividir los datos uniformemente en todas las instancias del motor.
Autenticación, identidades administradas por el usuario y claves administradas por el cliente
- Autentíquese con certificados de cliente. Azure Load Testing ahora le permite autenticar puntos de conexión de aplicación que requieren un certificado de cliente.
- Pruebe puntos de conexión privados o aplicaciones hospedadas en el entorno local. Azure Load Testing le permite probar puntos de conexión de la aplicación privados o aplicaciones que hospeda en el entorno local.
- Identidades administradas asignadas por el sistema y asignadas por el usuario. Azure Load Testing ahora admite identidades administradas asignadas por el sistema y asignadas por el usuario.
- Claves administradas por el cliente. Compatibilidad de Azure Load Testing con claves administradas por el cliente.
Métricas adicionales
- Métricas adicionales del lado cliente para los criterios de paso o error. Azure Load Testing permite aprovechar las métricas de criterios de paso y error, incluidas las métricas adicionales del lado cliente de las solicitudes por segundo y la latencia.
- Vea las métricas del motor de carga. Capacidad de ver las métricas de mantenimiento del motor para comprender el rendimiento del motor de pruebas durante la ejecución, lo que permite la confianza en los resultados de la prueba y mejora de la configuración de la prueba.
Cumplimiento y disponibilidad regional
- Azure Load Testing tiene la certificación HITRUST.
- Disponibilidad regional de Azure Load Testing. Azure Load Testing ya está disponible en 11 regiones; Este de Australia, Este de Asia, Este de EE. UU., Este de EE. UU.2, Norte de Europa, Centro-sur de EE. UU., Centro-sur de Suecia, Sur de Reino Unido, Oeste de Europa, Oeste de EE. UU. 2 y Oeste de EE. UU. 3.
Introducción a Azure Load Testing
Puede empezar a trabajar con Azure Load Testing mediante la creación de un recurso de Azure Load Testing en Azure Portal. Consulte la documentación de Azure Load Testing y cree la primera prueba de carga.
Obtenga más información sobre los precios en la página de precios de Azure Load Testing.
Vea el nuevo episodio de DevOps Lab, "¿Qué hay nuevo en Azure Load Testing?".
Pruebas de carga de Azure en DevOps Lab
Figura 5: Novedades de Azure Load Testing con April Edwards y Nikita Nallamothu.
Comparta sus comentarios
Nos encantaría escucharte a través de nuestro foro de comentarios.