Wednesday, 12 June 2013

Why Integration testing is Vital for software components?








Hi Sprinters….!! Have you ever thought, why integration testing of software components is needed, even though those components are tested individually as part of Unit testing?
Following are the reasons behind the need of integration testing:

  • A Module in general is designed by an individual software developer whose understanding and programming logic may differ from other programmers. Integration testing becomes necessary to verify the software modules work in unity.

  • At the time of module development, there are wide chances of change in requirements by the clients. These new requirements may not be unit tested and hence integration testing becomes necessary.

  • Interfaces of the software modules with the database could be erroneous.


Now let’s take a look at the different approaches in performing integration testing.

Integration testing can be mainly classified into four categories:

1. Top-down approach
2. Bottom up approach 
3. Sandwich approach
4. Big-bang approach
Let’s discuss about each type.

  1. Top-down approach: In this type of approach, top integrated modules are tested first and the branches of the modules are tested step by step until the end of the related module.
      But what should we do when come across a situation where sub 
                  modules are still under construction??? Need to stop the testing,
                  until those are fully implemented?? Not at all required..!!


In this type of scenario, we will use dummy sub-modules, which can be referred as “Stub”, to go ahead with our testing.

  1. Bottom-up approach: In this type of approach, lowest level 
    components are tested first, and 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.

But similar to the hurdle just we faced in top-down approach, what should we do when come across a situation where main modules are still under construction??? Need to stop the testing, until those are fully implemented?? No…!!

In this type of scenario, we will use dummy main-module, which can be referred as “driver”, to proceed with our testing.


  1. Sand-wich testing: It is the combination of top-down & bottom-up approaches where both the testing techniques are started simultaneously and meet somewhere in the middle. Suitable for large programs such as operating systems.
  1. Big-bang testing: It is a bit different from the above three approaches, in which software elements, hardware elements, are combined all at once into overall system, rather than stages.

So friends..!! This is the technical story behind the integration testing.


Hey…do you know the other names for Integration testing!!? 

This can be also called as “String Testing” and sometimes 

Thread Testing”.


Post By:- Deepthi



5 comments:

  1. Nice article..very well explained..

    ReplyDelete
  2. Excellent article I have ever found.. Thanks for posting Deepthi.

    ReplyDelete
  3. Get to know the use of Stub & Driver..Thank you

    ReplyDelete
  4. good post deepthi . good information. it would be good if some more information is added regarding stubs and drivers.

    Regards

    ReplyDelete
    Replies
    1. Hi pardhu i will post more information about stub and driver soon

      Delete