Archived PushToTest site

The Top 3 Issues In Website Load Testing

Website Load Testing for Web Applications and You

I talk with hundreds of CIOs, CTOs, Testers, and Developers every month. These are the top3 issues they ask me about:

How Many Users Can My Website Handle?

Performance testing identifies your Website's ability to achieve linear scalability. In a linear scaling system every user gets the same performance - no matter the number of users concurrently on the Website. If 100 people use the site concurrently they get the same speed as when 100,000 people use the same site.

Stress testing identifies how your Website will fail when too many users are on the site. How it fails is valuable for resource planning and disaster planning.

The best solution combines Website load testing technology with performance monitoring. An integrated solution correlates the load generated against a site by virtual users to the monitored resource statistics of the backend (CPU, network, and memory needs.) These performance solutions show how many users your Web site can handle before it slows and fails. Repurposing technology uses the same test to show how your Website will act as it fails. Look for a Linear Scalability Index chart is the fastest and easiest measurement of your Website's ability to serve 100 users to 5 million users.

Do I Have To Use Test Scripting Languages To Write Effect Tests?

The alternative to writing tests in a scripting language is Record/Playback tools. These watch your use of a browser to create a test script for you. The downside is when it comes to test script maintenance. In the long-term a good object oriented approach to test development will reduce maintenance costs. For Selenium tests that means PageObjects. For Java that means jUnit.

But that does not solve the issue for testers that have little scripting experience and knowledge. For these cases I recommend a Record/Playback tool that exports test scripts in Jav, PHP, Ruby, Python, and other scripting languages. These make the need to tip into test scripting a little further off.

I recommend you search for a test script design tool that watches you operate a Website in Internet Explorer (IE,) Firefox, Chrome, Safari, and Opera. The tool should automatically handle wait/pause functions in the Ajax, Flex, Flash, Applets, and Oracle Forms in your Web pages. Your goal is to create reusable test objects for functional testing, load and performance testing, and production monitoring. Stay away from tools with Beginner/Expert modes because "expert" normally means complicated with hand-coding, and the scripting languages are often proprietary.

How Do I Manage Thousands of Agile Stories and Tests Effectively?

Writing a few test scripts is easy. Supporting a dozen testers and 10 or more test suites means managing 100 or more tests. The hand-written back of an envelope and/or an Excel spreadsheet is not enough to scale-up your management of the test.

Agile test management services like Rally, Zephyr, QMetry, and InfoLink work around Agile stories, use cases, and tests. They make it easy to scale from a dozen tests to thousands. Connect test scripts to Agile stories to immediatly learn which tests have run (pass and fail,) which tests ran with slower than acceptable performance, and how the performance changes from sprint to sprint. Look for test management that integrates Website load testing from soapUI, Selenium, WebDriver, Sahi, jUnit, and TestNG.

Now that you know the top 3, consider learning more by reading my advanced report on Website load testing.

Get The Advanced Report on Website Load Testing
Get the advanced report on Website load testing.

-Frank