Subscribe by Email


Showing posts with label Top Down. Show all posts
Showing posts with label Top Down. Show all posts

Thursday, March 29, 2012

What are different types of integration testing?

Most of us are familiar with the concept of the integration testing but, still let use brief up ourselves before we move on to the types of the integration testing. Integration testing is nothing but to integrate first and then test. It is often abbreviated to I&T. There are 3 primary phases in any software testing process:


1. 1st phase: Unit testing
2. 2nd phase: Integration testing
3. 3rd phase: Validation testing


About Integration Testing


- Integration testing is carried out after the completion of 1st phase i.e., unit testing.

- Integration testing involves the integration of the various software modules together and then subjecting them to testing.

- Each of the modules integrated in a group during the integration have passed the unit testing successfully.

- The modules which don’t pass the unit testing cannot be further processed for the integration testing.

- After the modules pass even the integration testing, they are carried forward for the system testing and later to system integration testing.

- The integration testing aims at the verification of the features, functionalities, reliability, performance and requirements specified for the assemblages or design items of that particular software system or application that is currently under the test.

- The exercising of these assemblages is done with the help of the black box testing techniques.

- Any error or bug occurring during the integration process is simulated using the proper input data values or parameters.

- Apart from testing just the integration of the software modules, the inter- process communication and the sub systems are also tested via their interface.

- Special test cases are designed to carry out the integration testing.

- The integration testing follows the approach of the “building block”.

Different Types of Integration Testing


Now let us see what all are the different types of integration testing.

1. Non incremental integration testing or Big bang integration testing

- This approach to integration testing involves the coupling of the individual developed modules so as to form a proper and complete component of a software system or application.

- After this the integrated component is subjected to the integration testing.

- Among all the types of integration testing, the big bang integration testing methodology proves to be the most effective methodology for saving one’s precious time.

- But, the condition here is that the test cases must be well developed without any errors and their outcomes must be recorded without any mistakes.

- If any discrepancy or error leaks in the results of the test cases, then the whole integration process can turn out to be more complex rather than becoming easy.

- This in turn will act as a hindrance in the way of achieving the goals.

- Big bang type integration testing has got another type called “usage model testing”. This has an added advantage that it can be used for the hardware also rather than juts for software integration testing.

2. Incremental Integration Testing

This type is further divided in to three sub- types:

(a) Bottom up integration testing

- This approach involves the testing of the components at the lowest levels first and then succeeding to the higher level components.
- This process continues till the all the higher level components have been tested.
- This approach is effective when it comes to rooting out the bugs.

(b) Top down Integration Testing

- This approach involves the testing of the integrated modules at the top of the hierarchy model and then the lower level components are tested.
- This approach is effective when it comings to find a missing branch.

(c) Sandwich Integration Testing
- This approach is the resultant of the combination of both the top down and bottom approaches of the integration testing.


Tuesday, November 29, 2011

What are different characteristics of integration testing?

Sometimes abbreviated as "I&T", it is one of the most important testing in the world of software testing which tests units as a group. Means to say, in integration testing the units or modules are combined and tested. This is done to determine that the units are working in collaboration with each other or not.

- Integration testing is carried out after the unit level testing but before the validation testing.
- For integration testing units or modules that have been unit tested are supplied as input. Then they are conjoined to form groups and integration is performed over them and the output is given out.
- Integration testing is carried out to examine the functionalities, reliability, performance and requirements of those grouped modules under testing.
- Integration testing is implemented through the interfaces of the units with the help of black box testing techniques.
- During integration testing success and failures are overcome, inter process communication between the units is tested and using the input surface individual and distinct subsystems are implemented.
- Like other kinds of testing, integration testing also requires the aid of test cases to test various aspects of its input unit aggregates.
- Integration testing works on the idea of “building block” according to which verified and examined unit aggregates are implemented on a verified base which is the software system itself.

There are various kinds of integration testing techniques. Three major techniques have been discussed below:

- Big Bang:
In this type of integration testing all of the grouped units or modules are joined together to the form the complete and finished software system and then the integration testing is carried out for the whole software system in one go. The big bang technique is very effective when the software developer wants to save his/ her time. This technique is a true time saver package. But, it has a disadvantage which is that if the unit tests have not been recorded and carried out properly, the whole integration testing process may become more complicated and difficult to crack and may prove to be a hindrance between the integration testing and its goal.

- Big bang technique has a distinct testing method which is called “usage model testing”.
- This integration testing works for both hardware integration testing as well as for software integration testing.]
- This type of integration testing aims implement user like workloads in user like environments which are well integrated.
- This testing methodology involves the proofing of environment first and then later proofing the individual units by implementing their functionality or usage. - This can be thought of as an optimistic approach to integration testing.
- This technique requires more hard work as the problems are more. It is based upon the idea of “ isolate and test”.

But the big advantage here is that usage model testing provides good test coverage and thus making it more efficient than the other techniques.

- Top down integration testing:
This type of integration testing includes testing of the modules at the top most position first and coming down to the branches of those modules or units until the end of the program is reached.

- Bottom up integration testing:
This type of integration testing the modules or the units’ aggregates at the lowest level are tested first and then the upper modules are tested. This testing is carried on and on till the top most module is tested. This kind of testing is helpful only when all the modules have been developed and are ready for integration.

- Top sandwich integration testing:
This integration testing technique involves combination of top down and bottom up testing.


Saturday, October 16, 2010

Validation phase - Integration Testing - Top Down Integration and Bottom Up Integration

Integration testing is a systematic technique for constructing the program structure while at the same time conducting tests to uncover errors associated with interfacing. The objective is to take unit tested components and build a program structure that has been dictated by design. There are two methods of integration testing:
- Top-down integration approach
- Bottom-up integration approach

Top-down Integration Approach
It is an incremental approach to construction of program structure. Modules are integrated by moving downward through the control hierarchy beginning with the main control module. Modules subordinate to the main control module are incorporated into the structure in either a depth-first or breadth-first manner.
- The main control module is used as a test driver and stubs are substituted for all components directly subordinate to the main control module.
- Depending upon integration approach, selected subordinate stubs are replaced one at a time with actual components.
- Tests are conducted as each component is integrated.
- On completion of each set of tests, stub is replaced with real component.
- Regression testing may be conducted to ensure that new errors have not been introduced.

Bottom-Up Integration Approach
It begins construction and testing with atomic modules. Because components are integrated from bottom up, processing required for components subordinate to a given level is always available and the need for stubs is eliminated.
- Low level components are combined into clusters that perform a specific software sub function.
- A driver is written to coordinate test case input and output.
- The cluster is tested.
- Drivers are removed and clusters are combined moving upward in the program structure.


Facebook activity