In today's world of e-business, your customers and business partners expect
fast performance from your Web sites. They assume that pages will download immediately
and that online transactions will be executed efficiently and accurately. Just
as in a brick-and-mortar business, where customers don't want to stand in long
lines or have their credit cards charged incorrectly, they also expect business
on the Internet to be conducted efficiently and without mistakes.
In order to compete effectively in the online consumer and B2B marketplaces,
companies should evaluate the ability of their Web-based applications to accommodate
multiple, simultaneous users viewing a Web site or engaging in online transactions.
This is typically accomplished through the purchase of an application load-testing
tool. Load-testing products simulate the experience of live users with "virtual"
users created by load-testing technology. The load-testing software can then
record the virtual users' experiences and provide this information to the client
business.
Load-testing software is often distributive in nature. It is applied on multiple
servers running simultaneously, with each server simulating multiple virtual
users. In many cases, the testing company has developed its own proprietary
browser that can be combined with a set of instructions tailored to the testing
of each client business. The testing company maintains ongoing records of the
virtual users' experiences at the test site, including response times and errors.
Many testing companies also monitor the client Web site remotely to help diagnose
connectivity problems. The actual error messages experienced by the virtual
users may be recorded for later review. A set of logs can be created that document
each of the user experiences, and this information can later be compared with
CPU and database testing information obtained during the test by a systems administrator
or by software offered by the testing company.
One feature that load-testing companies often provide is testing the Web-based
application externally from multiple points of presence to ensure that the quality
of the provider's connectivity isn't the cause of system slowdowns. For example,
if the client network was expected to have 10 Mbps of bandwidth but consistently
experiences network slowdowns at 6 Mbps, this may signify that the network isn't
getting its expected 10 Mbps.