Mandy Whaley, Partner Director of Product, Azure Dev Tools, announced the preview of the Azure Load Testing service. It is a fully managed Azure service, which allows testers and developers to optimize the application’s performance, capacity, and scalability. This load testing software service works by deliberately stimulating traffic on your application to determine how it performs under stress and heavy load.
Using this service, developers can fix the traffic and load issues of the application before going live. Developers can also predict how smoothly the application performs with a vast set of audience or users. The load testing service can also be used by organizations to form different scenarios to check the performance and resiliency of the application, when a massive set of end-users simultaneously tries to access it.
To work with the Azure Load Testing service, a user has to set up the Azure load testing resource that serves as an infrastructure for running a large-scale load test. Using Apache JMeter script, a developer simulates the number of virtual users who simultaneously access the application endpoints. The script also includes information about endpoints and test configuration settings. To execute the testing process, users are prompted to upload the script file and run the load test.
Once the load testing starts, a live update about detailed resource metrics is displayed in the load testing dashboard. The dashboard will display both the client and server-side metrics.
The client-side metrics give details about the number of virtual users, request-response time, and number of requests per second. The server-side metrics provide information about the number of database reads, type of HTTP responses, and container resource consumption.
Developers can refer to the live dashboard metrics to determine how the application works in different scenarios. They can also compare the test result across various load tests with different numbers of virtual users to understand the application’s performance over time. Azure Load Testing always saves a history of previous test runs with different virtual users and use cases. Using this, a developer can visually compare multiple runs to trace performance regressions of the application across different scenarios.
Instead of performing load testing separately, developers can include it into the existing CI/CD (Continuous Integration and Continuous Deployment) pipelines or workflows. With this method, developers can achieve an end-to-end software development lifecycle in high-end applications.