All white box tests have the disadvantage that the program's source
code is needed to run the tests. Functional or black box
testing , however, aims to test a given program's
behavior against its specification without making any reference to the
internal structures of the program or the algorithms used. Therefore
the source code is not needed, and so even purchased modules can be
testet. The programs just get a certain input, and its
functionality
is examined by observing
the output. This can be done in the following way:
Input Interface Processing Output Interface
The tested program gets a certain input or the input is observed. Then the product does its job and generates a certain output which is collected by a second interface. This result is then compared to the expected output which has been determined before the test.
There are a lot of different ways to do black box testing. Even to try
to cover most of them would be far beyond the scope of this thesis, so
again five representatives which should give a good impression have
been chosen
.