SOFTWARE TESTING
UNIT - 3
LEVELS OF TESTING
TOPIC:
INTEGRATION TESTING
INTEGRATION TESTING:
 Testing the interaction between the modules and interaction with other system
externally.
 Integration testing is both a type of testing and phase of testing.
 Integration is defined to be a set of interactions, all defines interaction among the
components need to be tested.
 Integration testing 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 the validation testing.
 The purpose of the integration testing is to expose faults in the interaction between
the integrated units.
 The goal of the integration testing is to check the correctness of communication
among all the modules.
Why do we do integration testing?
 Unit tests only test the unit in isolation.
 Many failures result from faults in the interaction of subsystems.
 Without the integration testing the system test will be very time consuming.
Integration test tool:
1. TestNG
2. Rational Software
3. JUnit
4. N Unit
5.Test Magic
Types of integration testing:
 There are two types of integration testing:
* Internal interfaces
* External interfaces
Internal interfaces are those that provide communication across two modules within a project or
product, internal to the product, and not exposed to the customer or external developers.
External interfaces are those that are visible outside the product to third party developers and solution
providers.
Methodologies used in integration testing:
 There are several methodologies available, to decide the order for integration testing.
 These are as follows:
1. Top Down Integration
2. Bottom Up Integration
3. Bi-Directional Integration
4. System Integration
Top Down Integration:
 Integration testing involves testing the topmost component interface with other components in
same order as you navigate from top to bottom, till we cover all the components.
Order of testing interface:
Steps Interfaces Tested
1 1-2
2 1-3
3 1-4
4 1-2-5
5 1-3-6
6 1-3-6-(3-7)
7 (1-2-5)-(1-3-6-(3-7))
8 1-4-8
9 (1-2-5)-(1-3-6-(3-7))-(1-4-8)
Bottom Up Integration:
 Bottom Up Integration is just the opposite of top-down integration, where the components for a new product
development become available in reverse order, starting from the bottom.
Order of Interface tested using Bottom Up Integration
Steps Interfaces Tested
1 1-5
2 2-6,3-6
3 2-6-(3-6)
4 4-7
5 1-5-8
6 2-6-(3-6)-8
7 4-7-8
8 (1-5-8)-(2-6-(3-6)-8)-(4-7-8)
Bi-Directional Integration:
 Bi-directional integration is a combinational of the top-down and bottom-up integration approaches used
together to derive integration steps.
 This approaches is also called as “SANDWICH INTEGRATION”.
Steps for integration using sandwich
testing:
Steps Integration Tested
1 6-2
2 7-3-4
3 8-5
4 (1-6-2)-(1-7-3-4)-(1-8-5)
System Integration:
 System integration means that all the components of the system are integrated and tested as a single unit.
 Integration testing, which is testing of interface, can be divided into two types:
* Components or Sub-System Integration
* Final Integration testing or System Integration
Big Bang Integration is deal for a product where the interfaces are stable with less number of defects.
Choosing integration method:
Sno Factors Suggested Integration Methods
1 Clear Requirement and Design Top Down
2 Dynamically, Changing Requirements, Design, Architecture Bottom-Up
3 Changing Architecture, Stable Design Bi-Directional
4 Limited Changes to existing Architecture with less Impact
Big Bang
5 Combination of all the above Select one of the above after careful
analysis
Designing Integration testing:
 Integration test for procedural software can be designed using a black or white box approach.
 Some unit test can be reused.
 Since many error occur at module interfaces, test designers need to focus on exercising all input/output
parameter pairs and all calling relationships
 The tester needs to insure the parameters are of the correct type and in the correct order.
Integration Test Planning:
 Integration test must be planned.
 Planning can begin when high level design is complete so that the system
architecture is defined.
 Documents relevant to integration test planning are the requirement document, the
user manual and usage scenarios.
 These documents contain structure charts, the state charts and data dictionary ,
cross reference table, module interface description
 The strategy for integration of the unit must be defined .
 The detailed description is given :-
*Cluster this cluster is dependent on
*A natural language description of the functionality of the
cluster to be retested.
*List a classes in the cluster
*A set of cluster test cases.

SOFTWARE TESTING INTEGRATION TESTING.pptx

  • 1.
    SOFTWARE TESTING UNIT -3 LEVELS OF TESTING TOPIC: INTEGRATION TESTING
  • 2.
    INTEGRATION TESTING:  Testingthe interaction between the modules and interaction with other system externally.  Integration testing is both a type of testing and phase of testing.  Integration is defined to be a set of interactions, all defines interaction among the components need to be tested.  Integration testing 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 the validation testing.  The purpose of the integration testing is to expose faults in the interaction between the integrated units.  The goal of the integration testing is to check the correctness of communication among all the modules.
  • 4.
    Why do wedo integration testing?  Unit tests only test the unit in isolation.  Many failures result from faults in the interaction of subsystems.  Without the integration testing the system test will be very time consuming. Integration test tool: 1. TestNG 2. Rational Software 3. JUnit 4. N Unit 5.Test Magic
  • 5.
    Types of integrationtesting:  There are two types of integration testing: * Internal interfaces * External interfaces Internal interfaces are those that provide communication across two modules within a project or product, internal to the product, and not exposed to the customer or external developers. External interfaces are those that are visible outside the product to third party developers and solution providers.
  • 7.
    Methodologies used inintegration testing:  There are several methodologies available, to decide the order for integration testing.  These are as follows: 1. Top Down Integration 2. Bottom Up Integration 3. Bi-Directional Integration 4. System Integration
  • 8.
    Top Down Integration: Integration testing involves testing the topmost component interface with other components in same order as you navigate from top to bottom, till we cover all the components.
  • 10.
    Order of testinginterface: Steps Interfaces Tested 1 1-2 2 1-3 3 1-4 4 1-2-5 5 1-3-6 6 1-3-6-(3-7) 7 (1-2-5)-(1-3-6-(3-7)) 8 1-4-8 9 (1-2-5)-(1-3-6-(3-7))-(1-4-8)
  • 11.
    Bottom Up Integration: Bottom Up Integration is just the opposite of top-down integration, where the components for a new product development become available in reverse order, starting from the bottom.
  • 13.
    Order of Interfacetested using Bottom Up Integration Steps Interfaces Tested 1 1-5 2 2-6,3-6 3 2-6-(3-6) 4 4-7 5 1-5-8 6 2-6-(3-6)-8 7 4-7-8 8 (1-5-8)-(2-6-(3-6)-8)-(4-7-8)
  • 14.
    Bi-Directional Integration:  Bi-directionalintegration is a combinational of the top-down and bottom-up integration approaches used together to derive integration steps.  This approaches is also called as “SANDWICH INTEGRATION”.
  • 16.
    Steps for integrationusing sandwich testing: Steps Integration Tested 1 6-2 2 7-3-4 3 8-5 4 (1-6-2)-(1-7-3-4)-(1-8-5)
  • 17.
    System Integration:  Systemintegration means that all the components of the system are integrated and tested as a single unit.  Integration testing, which is testing of interface, can be divided into two types: * Components or Sub-System Integration * Final Integration testing or System Integration Big Bang Integration is deal for a product where the interfaces are stable with less number of defects.
  • 18.
    Choosing integration method: SnoFactors Suggested Integration Methods 1 Clear Requirement and Design Top Down 2 Dynamically, Changing Requirements, Design, Architecture Bottom-Up 3 Changing Architecture, Stable Design Bi-Directional 4 Limited Changes to existing Architecture with less Impact Big Bang 5 Combination of all the above Select one of the above after careful analysis
  • 19.
    Designing Integration testing: Integration test for procedural software can be designed using a black or white box approach.  Some unit test can be reused.  Since many error occur at module interfaces, test designers need to focus on exercising all input/output parameter pairs and all calling relationships  The tester needs to insure the parameters are of the correct type and in the correct order.
  • 21.
    Integration Test Planning: Integration test must be planned.  Planning can begin when high level design is complete so that the system architecture is defined.  Documents relevant to integration test planning are the requirement document, the user manual and usage scenarios.  These documents contain structure charts, the state charts and data dictionary , cross reference table, module interface description  The strategy for integration of the unit must be defined .
  • 22.
     The detaileddescription is given :- *Cluster this cluster is dependent on *A natural language description of the functionality of the cluster to be retested. *List a classes in the cluster *A set of cluster test cases.