Load Test Your Website Before Your Customers Do

[article]
Summary:
When you release a website or web application, it’s going to face a lot of very public load testing. If it performs poorly, there’s a good chance that you’re going to lose a lot of customers. Colin Mason offers some tips for load testing in order to ensure a better customer experience.

In this day and age, the web tends to be the number-one way businesses interact with their customers and prospects. Web performance—or the speed and reliability of your website, mobile site, and web applications—can have a huge impact on your business. According to the Aberdeen Group, a single-second delay in website response time translates to an 11 percent reduction in the number of pages customers and prospects view on your site, a 16 percent drop in customer satisfaction, and a 7 percent decline in conversions.

As a software tester or quality assurance professional, your job is to ensure superior website, mobile site, and web application performance, particularly during peak traffic periods when a business often has the most to gain (or lose). If the site is slow, you’re going to lose customers to competition. If customers can’t get through their transactions, you’re not going to make money.

Years ago, load tests were designed to validate that your database, server, and internal network were ready to handle peak traffic loads (in the vicinity of one hundred users!). As websites, mobile sites and web applications have grown significantly more complex over the past decade, they now require a whole new set of techniques and practices for load testing.

Load Test from Your Customers’ Point of View,  Not Your Data Center’s
Today’s websites and web applications have evolved from simple, single-function tools to feature-rich composites offering extensive functionality from external third-parties like shopping carts, ratings, and reviews and analytics, as well as RSS feeds and social media plug-ins. In fact, the average website today connects to more than twelve hosts. While these extensive functionalities can enable a richer online customer experience, they also introduce performance risks, since any one component can cause a website or web application to slow down. Case in point: Tagman recently determined that Google’s +1 plug-in drags down page load times by a full second.

In addition to third-party applications, there are many other performance-impacting elements standing between your data center and your customers around the world, including cloud service providers, regional ISPs, local ISPs, content delivery networks, and even browsers and devices. Collectively, this concept is known as the web application delivery chain, and poor performance anywhere in the chain will degrade the cumulative customer experience and reflect poorly on you, the website owner, regardless of the actual cause.

The reality of modern websites and web applications is that even if your inside-the-firewall tools indicate that everything is running OK, that’s no guarantee your customers are happy. You can no longer just test inside the firewall, because this gives you only partial coverage and leaves you with significant blind spots. You must load test the entire web application delivery chain in order to identify and fix any weak links. Some businesses believe they can’t load test external elements because those elements are beyond their control. But, if you can do a load test from the customer’s point of view and include that entire web application delivery chain in your load test, then you really are in a stronger position of control.

Know What an Excellent Experience Looks Like
As a software tester, not only should you be able to clearly communicate to various functional groups with a stake in web application performance (IT, line of business, and marketing) the direct, bottom-line impact of web performance, but you should also be able to define “strong experience.” How fast and available do you need to be during peak periods? A recent industry survey found that 41 percent of online shoppers have no qualms about abandoning a preferred website to shop elsewhere after only one or two bad experiences during a peak time. In addition, a vast majority of online shoppers report being very much inclined to tell people they know about poor web experiences. Today, your customers expect superior experiences regardless of whether there are ten users on a site or ten million. Industry benchmarks can give you a quick view of how your competitors are performing and the expectation they’re setting in the marketplace regarding what constitutes a “good” online experience.

Besides speed and reliability, there are other pieces that, when put together, also contribute to the customer online experience, such as: Does the page load correctly? Does it look right? Are all the objects on the page? Are there a lot of 404 errors? Are there objects missing? By articulating the definition of “excellent experience,” you can create a shared language and basis of understanding among cross-functional teams, helping to unite them behind a common goal—which leads to the next point.

About the author

Colin  Mason's picture Colin Mason

Colin Mason, web load testing product manager for Compuware's Application Performance Management (APM) division, is an expert on load testing from the true end-user perspective.  This helps businesses proactively ensure their websites, mobile sites, and applications will perform under various size traffic loads. Mason can be reached at colin.mason@compuware.com.

AgileConnection is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!