Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

Testing Web applications for performance

With an n-tier Web architecture, testing Web applications for performance can be challenging. Here are some suggestions to ease the process.

Web applications have become very complex with the advent of the n-tier Web architecture. Load testing, which consists of scalability, performance and stability testing, is the only way to uncover major problems inherent in the architecture. Doing performance testing of such complex Web applications is very challenging and can lead to measured losses if it isn't carried out properly in a planned manner. In this tip I offer some measures that can help get Web applications tested adequately for performance.

Begin early
It's a good idea to plan your load testing effort in the early design phases so that there aren't any last-minute surprises.

Environment specifications
It's always beneficial to have a testing environment that is comparable to production. Make sure to document specifications related to things such as machine configuration, speed and setup apart from knowing the exact number of users the applications would be serving at a given point of time.

Testing strategy
You can plan a good test strategy after you get the exact requirements from the client about his expectations from the Web application. Write down test cases considering the kinds of users to be supported with typical hardware configuration.

Some pointers to consider while writing test cases:

  1. Will the Web application need HTTPS testing as it will require more client hardware?
  2. Are there any stability issues that will prevent the site from operating in a production environment?
  3. How many synchronized concurrent requests can the application handle?
  4. How many nonsynchronized super users can one machine handle before response time degrades below a set limit?
  5. Do the results scale linearly as you add additional hardware?

Use metrics
It's very important to have proper metrics in place during the overall testing process. This can include the number of orders processed per minute or the number of milliseconds required to execute a request on an ASP page.

Web application testing resources
Web application testing techniques

Web application security testing checklist

Web application testing: The difference between black, gray and white box testing

Metrics help to quantify the results of the changes made between each of your test runs. They provide a comparison to the benchmarks defined for your Web application.

Using metrics is of no use if you can't make meaning out of the results that you get by using those metrics. So try to analyze the data collected by using metrics and see if they meet the standards set previously.

Also, make sure to store each test run's metrics for future evaluation. Going back to past data is critical to understanding how the system is reacting to the changes being made.

Use of testing tools
Along with a testing strategy, it's important to use an appropriate load test tool. A proper load testing tool can be identified based on the type of Web application to be tested, as well as how critical and complex the application is.

You can also use freely available tools such as Microsoft's Web Application Stress Tool (WAST) or tools such as Microsoft's Application Center Test (ACT) or Empirix's e-TEST.

Dig Deeper on Topics Archive

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.