6.3 System
testing
System testing is the exhaustive and thorough process that
determines whether the system produces the desired results under known
conditions.
Test data must be carefully prepared, results reviewed and
corrections made in the system.
To ensure testing is clear and comprehensive a systematic test
plan must be employed.
The development team and users prepare Test plan with details
on how tests will be carried out. It must detail: -Expected inputs, Expected
outputs, Expected error reactions, Expected communications, Expected
termination, etc.
6.2.1 Methods /
Types of Testing
6.2.1.1 Functional testing
This is a software testing technique whereby the internal
workings of the item being tested are not known by the tester. For example, in
a black box test on software design the tester only knows the inputs and what
the expected outcomes should be and not how the program arrives at those
outputs. The tester does not ever examine the programming code and does not
need any further knowledge of the program other than its specifications.
Advantages of functional testing
· The test is unbiased because the designer and the
tester are independent of each other.
· The tester does not need knowledge of any specific
programming languages.
· The test is done from the point of view of the
user, not the designer.
· Test cases can be designed as soon as the
specifications are complete.
Disadvantages of functional testing
· The test can be redundant if the software designer
has already run a test case.
· The test cases are difficult to design.
· Testing every possible input stream is unrealistic
because it would take an inordinate amount of time; therefore, many program
paths will go untested.
|