Integration Testing:-
Testing in which software components, hardware components, or both together are
combined and tested to evaluate interactions between them.
Integration testing takes as its input modules that have been checked out by
unit testing, groups them in larger aggregates, applies tests defined in an
Integration test plan to those aggregates, and delivers as its output the
integrated system ready for system testing.
What:
Testing performed to expose faults in the interfaces and in the interaction
between integrated components.
Who will do:
As integration testing covers broad length of ‘V’ model. From the developers to
System integrators will involve.
Where it:
Almost all integration will takes place at the developing organization sites.
Integration testing can be conducted in two ways.
1) Non-Incremental Approach
2) Incremental Approach
1) Non-Incremental Approach:
The non incremental approach is also known as “Big-Bang” testing. This approach
is very unfashionable due to the level of risk that one takes in hoping that the
system will perform as expected.
2) Incremental Approach:
Incrementally integration testing can be split in to
a) Top-down Testing
b) Bottom-up Testing
c) Sandwich (Hybrid) Testing
a) Top-down Testing:
In Top-down Testing, higher level modules are tested. If lower modules required
to make up the system are not yet available then, stubs are used to simulate
their activity.
Stub: Small software placed in to a program that provides a common function.
b) Bottom-up Testing:
In Bottom-up testing, lower level modules are tested. If the higher level
modules required to make up the system are not yet available then, drivers are
used to simulate their activity.
Driver: Drivers are simple program designed specifically for
testing that make calls to these lower layers.
c) Sandwich Testing:
Sandwich testing is a hybrid between Bottom-up and Top-down testing. It will
test the user interface in isolation using Stubs and test the very lowest
functions using drivers.
|