Home

About

Website usability
-->Articles

Website design
-->Articles

Website testing
-->Articles

Search engine optimization
-->Articles

Website analytics
-->Articles

Web testing archive

Performance testing

Website testing articles by UZilla.org

Performance testing definition

In this first article on Website performance testing we examine some common definitions. The following definitions are common terms used for different performance testing types:-

  • Load Testing
  • Stress Testing
  • Stability testing

    All of the above terms can apply to any software but, for the purposes of our discussion, we only apply them to web server testing. In reality the definition of web server includes application server and database server. Although it is possible to performance test the web client (i.e. the individual Web browsers running on a given desktop, our discussions only refer to performance testing the web server components).

    Performance testing types (load, stress and stability) refer to the overall scope of the performance testing objectives.

    The load testing objective.

    Web server load testing seeks to test, some aspect of the system, under normal load conditions. The term normal conditions is the key to this definition. In later articles we will discuss how normal operating conditions can be defined to further clarify the performance objective but for the wider objectives scoping we can say that any test that uses normal load conditions will be a load test.

    The stress testing objective.

    As the name implies the overall scope of this objective (and test type) is to hurt or stress parts of the system. This testing would push the operating conditions of the web server beyond what would be expected. Within the stress testing scope we could specify more detailed objectives i.e.:-

  • To see how the system behaves when stressed (i.e. does the server crash)
  • To estimate capacity of the current systems configuration, by looking for the resource limitations

    What the above two objectives have in common is that they will require the web server to be stressed and this is the general scope of the stress testing objective.

    The stability testing objective.

    Stability testing is listed separately as it involves running the system for long periods of time to determine if there is any reason (i.e. small memory leak) that the web server would not be able to provide its services for prolonged periods. The length of period and load would be determined by further objectives or a more detailed requirements specification. In general, however, a stability test should not be using more than 80% of the CPU (or another critical resource) as the system should not be stressed at a given point in time but rather subjected to normal load for extended time periods.

    Capacity testing.

    Although not referred to in the performance testing types, capacity testing is one form of performance testing. Capacity testing itself is a complicated subject and involves extrapolation calculations based on the results of a series of tests. This process of prediction will involve a combination of load and stress tests on a variety of systems configurations but in essence it is a separate objective that involves one of the above performance testing types already listed.

    Conclusion.

    Setting clear objectives for any test, including web server performance testing, is a must. Performance testing objectives can be broadly categorized as being load, stress or stability. In further articles the issues of clearly defining performance testing objectives will be examined in more detail.

    ©UZilla.org 2007

    No guarantee (or claim) is made regarding the accuracy of this information. Any questions or comments should be sent to:-