|
Software Testing Strategies- continued.....
Validation Testing
At the culmination of integration testing, software is completely
assembled as a package, interfacing errors have been uncovered and
corrected, and a final series of software tests-validation testing-may
begin. Validation can be defined in many ways, but a simple definition
is that validation succeeds when software functions in a manner
that can be reasonably expected by the customer. Software validation
is achieved through a series of black box tests that demonstrate
conformity with the requirements. A test plan outlines the classes
of tests to be conducted and a test procedure defines specific test
cases that will be used to demonstrate conformity with requirements.
Both the plan and procedure are designed to ensure that all functional
requirements are satisfied, all behavioral characteristics are achieved,
all performance requirements are attained, documentation is correct,
and human engineered and other requirements are met.
Stress Testing
During earlier software testing steps, white-box and black-box
techniques resulted in thorough evaluation of normal program functions
and performance Stress tests are designed to confront programs with
abnormal situations In essence, the tester who performs stress testing
asks "How high can we crank this up before it fails?"
Stress testing executes a system in a manner that demands resources
in abnormal quantity, frequency, or volume. For example,
- special tests may be designed that generate ten interrupts per
second, when one or two is the average rate
- input data rates may be increased by an order of magnitude to
determine how input functions will respond
- test cases that require maximum memory or other resources are
executed
- test cases that may cause thrashing in a virtual operating system
are designed
test cases that may cause excessive hunting for disk-resident
data are created Essentially, the tester attempts to break the
program
|