Sie sind auf Seite 1von 6

Integration testing

Introduction
Integration testing (sometimes called integration and testing, abbreviated I&T) is
the phase in software testing in which individual software modules are combined
and tested as a group. It occurs after unit testing and before validation testing.
Integration testing takes as its input modules that have been unit tested, 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.

Definition
Integration testing is a software testing methodology used to test individual
software components or units of code to verify interaction between various software
components and detect interface defects. Integration testing is a logical extension
of unit testing. In its simplest form, two units that have already been tested are
combined into a component and the interface between them is tested.

Reasons to perform integration testing


1. In real world, when applications are developed, it is broken down into smaller
modules and individual developers are assigned 1 module. The logic
implemented by one developer is quite different than other developer, so it
becomes important to check whether the logic implemented by a developer
is as per the expectations and rendering the correct value in accordance to
the prescribed standards.

2. Many a time the face or the structure of data changes when it travels from
one module to another. Some values are appended or removed, which causes
issues in the later modules.

3. Modules also interact with some third party tools or APIs which also need to
be tested that the data accepted by that API / tool is correct and that the
response generated are also as expected.

4. A very common problem in testing Frequent requirement change! Many a


time developer deploys the changes without unit testing it. Integration
testing becomes important at that time.

Description
1. Bottom up
Testing is an approach to integrated testing where the lowest level components are
tested first, then used to facilitate the testing of higher level components. The
process is repeated until the component at the top of the hierarchy is tested.

All the bottom or low-level modules, procedures or functions are integrated and
then tested. After the integration testing of lower level integrated modules, the next
level of modules will be formed and can be used for integration testing. This
approach is helpful only when all or most of the modules of the same development
level are ready. This method also helps to determine the levels of software
developed and makes it easier to report testing progress in the form of a
percentage.

Advantages

In this approach development and testing can be done together so that the
product or application will be efficient and as per the customer specifications.

Disadvantages

We can catch the Key interface defects at the end of cycle


It is required to create the test drivers for modules at all levels except the top

control

2. Top Down
Testing is an approach to integrated testing where the top integrated modules are
tested and the branch of the module is tested step by step until the end of the
related module.

Advantages

The tested product is very consistent because the integration testing is


basically performed in an environment that almost similar to that of reality
Stubs can be written with lesser time because when compared to the drivers
then Stubs are simpler to author.
Disadvantages

Basic functionality is tested at the end of cycle

3. Sandwich Testing
Sandwich testing is an approach to combine top down testing with bottom up
testing.

Advantages

Both Top-down and Bottom-up approach starts at a time as per development


schedule. Units are tested and brought together to make a system
.Integration is done downwards.
It needs more resources and big teams perform both bottom-up and top-
down methods of testing at a time or one after the other.

Disadvantages

It require very high cost for testing because one part has Top-down approach
while another part has bottom-up approach.
It cannot be used for smaller system with huge interdependence between
different modules.
It makes sense when the individual subsystem is as good as complete
system.
4. Big Bang
In this approach, most of the developed modules are coupled together to form a
complete software system or major part of the system and then used for integration
testing. The Big Bang method is very effective for saving time in the integration
testing process. However, if the test cases and their results are not recorded
properly, the entire integration process will be more complicated and may prevent
the testing team from achieving the goal of integration testing.

Advantages

Big Bang testing has the advantage that everything is finished before
integration testing starts.

Disadvantage:

The major disadvantage is that in general it is time consuming and difficult to


trace the cause of failures because of this late integration.
Example

Das könnte Ihnen auch gefallen