Functional or ‘black
which is not concerned with the internal logic or structure of the software,
only evaluating that the expected outputs arise from specified inputs and
Structural or ‘white
testing where the correct functioning of internal logic is investigated.
This requires knowledge of the software design.
where the individual software units are tested in isolation. Structural
testing is usually performed at this level.
which is either the progressive testing of incrementally assembled software
units or that of interfaced systems. Usually performed as functional testing
at this level.
in which functional testing of the whole system is performed. This may
require simulated data or interfaces depending on the complexity and size of
to establish whether the customer’s acceptance criteria have been met and
the system can be handed over to the customer.
involving boundary conditions, invalid inputs, high loadings or security
challenges to assess the system’s behaviour when operating at or outside its
performed after a change has been implemented to confirm that unmodified
areas of software continue to function correctly.
to provide objective evidence that the system requirements have been met.
to provide documented evidence which gives a high degree of assurance that a
system will consistently meet its pre-determined specifications.
in regulated industries – Installation Qualification (IQ) in all
environments to confirm correct installations, Operational Qualification (OQ)
in a test environment and Performance Qualification (PQ) in the live