Application Insights can easily be combined with Visual Studio Team Services to quickly set up a load test for your web application.
Why Bother with Load Tests?But why bother with load tests, you might ask? Is it not good enough that a web application functions as designed with no errors when you do your user acceptance testing? Surely that's all that matters, right?
Not necessarily. There have been many recent examples of rather embarrassing failures of high profile web applications due to the sheer number of people trying to access it at the same time. Who could forget the first Click Frenzy event, or more recently the Australian Census.
Digital businesses rely on web app performance and reliabilityIt becomes very real if you are a modern digital business, relying on the availability and performance of your web application for revenue, customer satisfaction and brand loyalty. Your next big online promotion is coming up and you are hoping to drive sales and revenue hard. But if your promo turns out to be a cracker, is your web application ready for the onslaught of your customers?
The answer is that you absolutely should test and push your application to its limits, so you can understand the capacity of compute you need to sustain the targeted number of concurrent visitors. Of course you could just use the power of the cloud and automatically scale your application horizontally. But that would make for a whole other post another time.
Visual Studio Team Services to the rescueEnter Visual Studio Team Services. If your web app happens to run in Azure, most likely you have already set up an Application Insights workspace to gain visibility on your application's performance and availability. Right from the portal you can also set up a Load Test. If you haven't already linked a VSTS account, you can do so by creating one on the fly.
Next simply configure the parameters of your load test, give it a name, what URL to test, duration, how many concurrent users, and from what location to test. Then sit back and let Azure App Insights and VSTS do the heavy lifting for you.
It will only take a little while to acquire the required resources to run the test but soon enough your test will kick in and the user load is generated.
Are there alternatives?Of course there are many other testing and load generator tools available in the market. Some of the more traditional options in this space that I am aware of and know reasonably well are HP LoadRunner and IBM Rational. These don't just do web applications but can also deal with legacy and LOB application testing. Add to this many newer generation web application centric testing tools and you can take your pick for what suits your circumstances best.
In SummaryApplication Insights and VSTS are interesting, capable and low cost options and are worth a look if you are a developer in the Microsoft space and/or your applications already run on Azure. I found the quick and easy setup for simple URL based load tests valuable. Knowing ahead of time what loads your web application can handle will mean you are always well prepared for the next online sales drive or promotional event.
Watch This Quick Demo
LinksMicrosoft Application Insights
IBM Rational Functional Tester