Pruebas de carga y de esfuerzo de ASP.NET Core
Las pruebas de carga y las de esfuerzo son importantes para garantizar que una aplicación web es eficaz y escalable. Las pruebas de carga y esfuerzo tienen objetivos diferentes, aunque a menudo comparten pruebas similares.
Pruebas de carga: prueban si la aplicación puede controlar una determinada carga de usuarios para un escenario concreto y, a la vez, satisfacer el objetivo de respuesta. La aplicación se ejecuta en condiciones normales.
Pruebas de esfuerzo: prueban la estabilidad de la aplicación al ejecutarse en condiciones extremas, a menudo durante un largo período de tiempo. Las pruebas colocan en la aplicación una gran carga de usuarios, ya sea picos o una carga que aumenta gradualmente, o limitan los recursos informáticos de la aplicación.
Las pruebas de esfuerzo determinan si una aplicación sometida a un esfuerzo puede recuperarse de un error y volver correctamente al comportamiento esperado. Bajo estrés, la aplicación se ejecuta con un estrés anormalmente alto.
Azure Load Testing es un servicio de prueba de carga totalmente administrado que permite generar una carga a gran escala. El servicio simula el tráfico de las aplicaciones, independientemente del lugar en que se hospeden. La versión preliminar de Azure Load Testing permite usar scripts de Apache JMeter existentes para generar una carga a gran escala.
La prueba de carga de Visual Studio 2019 está en desuso. El servicio de pruebas de carga basadas en la nube de Azure DevOps correspondiente se ha cerrado.
Herramientas de terceros
La lista siguiente contiene herramientas de rendimiento web de terceros con diversos conjuntos de características:
- Apache JMeter
- ApacheBench (ab)
- Gatling
- jmeter-dotnet-dsl
- k6
- Locust
- West Wind WebSurge
- Netling
- Vegeta
- NBomber
Pruebas de carga y esfuerzo con compilaciones de versión
Las pruebas de carga y esfuerzo deben realizarse en modo de versión y producción, y no en modo de depuración y desarrollo. Las configuraciones de versión están totalmente optimizadas con registro mínimo. La configuración de depuración no está optimizada. El modo de desarrollo habilita un mayor registro de la información que puede afectar al rendimiento.