next up previous contents index
Next: User Testing Up: Black Box or Functional Previous: Performance Testing

Stress Testing

   Stress testing is another method which is sometimes also regarded as a part of system testing. Its goal is to demonstrate that the program is not able to handle huge amounts of data, although it has been developed for this (this is especially necessary for real time systems). When doing stress tests, there is a distinction between two different kinds. In the first one, the program is presented a heavy volume of data for a longer period of timegif. For example, a linker might be fed with a thousand modules, or an air-traffic-control-system could be kept busy for a couple of days.

The second kind is stress testing in its original form. The application is encountered with a peak volume of data over a short span of time. So if the just mentioned air-traffic-control-system was designed to monitor and guide two hundred planes, simulate the occurance of those two hundred planes. Do not hesitate to confront it with an unexpected 201st plane, and check its response time on such an event.

Although it is not unlikely to construct situations this way that may -- if at all -- only rarely occur, those tests still have their justification. First of all, it is not possible to lock out those situations, and so especially in real time systems, they have to be tested. Just imagine the facial impression of the operator in the tower if the system suddenly asks: ``There is a 201st plane. What should I do?'' or if it even presents him an error message. Secondly, errors might occur that also happen in less stressful situations with a lower probability.



Ingo Melzer
Mon Aug 5 15:12:01 MET DST 1996