INTEGRATION TESTING

INTEGRATION TESTING

Table of Contents

Introduction

In the world of software development, creating an application that functions flawlessly is the ultimate goal. However, ensuring this can be challenging when different software modules or components come together to work as a whole. This is where integration testing plays a crucial role. It is a vital stage in the software development lifecycle (SDLC) that ensures individual software components or modules work together as intended. In this blog post, we will explore what integration testing is, why it matters, and how you can approach it in your QA testing process.

For those interested in becoming proficient in integration testing, there are Courses for software testers and training for testers available that provide the necessary skills to excel in this field. Let’s dive into the details of integration testing, its importance, types, methodologies, and best practices.

What is Integration Testing?

Integration testing is a type of software testing where individual software modules or components are combined and tested as a group. The goal is to identify and resolve any issues that may arise when these components interact. While unit testing ensures that each individual module works correctly, integration testing verifies that the system functions as expected when these modules come together.

INTEGRATION TESTING

For instance, consider an e-commerce website where different components like the user interface (UI), shopping cart, and payment gateway must interact smoothly. It ensures that data flows correctly between these components, and there are no breakdowns when they are integrated.

Importance of Integration Testing

Integration testing helps in identifying issues that may not be apparent during unit testing, especially when multiple components rely on each other. Some of the key reasons why it is crucial include:

  • Detecting Interface Issues: When modules interact, interface issues such as data mismatches, formatting errors, and incorrect function calls can occur. Integration testing helps to catch these problems early in the development process.
  • Ensuring Data Integrity: Since components interact by sharing data, integration testing ensures that the data being passed between them remains accurate, consistent, and formatted correctly.
  • Improved System Performance: By testing components together, you can ensure that the system works as intended and performs well under real-world conditions.
  • Reducing Risk of Failure: By identifying issues early on, it helps to minimize the risk of failure when the system goes live.

Types of Integration Testing

There are several types of integration testing, each with its approach and use cases. Understanding the different types is essential to choosing the right one for your project.

1. Big Bang Integration Testing

In big bang integration testing, all the modules are combined and tested simultaneously. This approach is simple but often leads to difficulties in identifying which module is responsible for a particular issue, especially if multiple problems arise. It is typically used for smaller projects or when the entire system is built at once.

Advantages:

  • Quick and easy to execute for smaller systems.
  • Minimal planning required.

Disadvantages:

  • Difficult to isolate issues due to simultaneous integration.
  • Can become cumbersome for larger projects.

2. Top-Down Integration Testing

Top-down integration testing is performed by testing the top-level modules first and gradually integrating and testing lower-level modules. In this approach, stubs are used to simulate the behavior of lower-level modules that are not yet integrated.

Advantages:

  • Immediate testing of the high-level functionality.
  • Easy to identify and isolate problems in high-level modules.

Disadvantages:

  • Lower-level modules may not be tested thoroughly until the end.

3. Bottom-Up Integration Testing

In contrast to the top-down approach, bottom-up integration testing starts with testing the lower-level modules first. Once these modules are verified, the higher-level modules are integrated and tested.

Advantages:

  • Ensures that lower-level modules are tested thoroughly.
  • Helps in identifying issues early in the development of low-level components.

Disadvantages:

  • High-level functionalities are tested at the end.
  • Requires drivers to simulate the higher-level modules.

4. Incremental Integration Testing

Incremental integration testing involves integrating one module at a time and testing it before moving on to the next. This approach can be either top-down or bottom-up, depending on whether you start with high-level or low-level modules.

Advantages:

  • Issues can be detected and fixed one at a time, making it easier to isolate problems.
  • Better control over the integration process.

Disadvantages:

  • Takes more time compared to big bang testing.
  • May require more resources for testing.

How to Approach Integration Testing

Effective it requires a strategic approach to ensure that all components work together seamlessly. Here are some steps and best practices to follow:

Step 1: Plan and Prepare

Before starting integration testing, it’s essential to plan out the process. This includes understanding the architecture of the system, identifying dependencies between modules, and preparing test cases. It’s also important to define clear success and failure criteria for the tests.

Step 2: Develop Test Cases

Develop detailed test cases that cover different interaction scenarios between the components. The test cases should focus on checking the flow of data, handling errors, and ensuring that each module interacts correctly with others.

Step 3: Execute the Tests

Execute the integration tests based on the defined Test cases. Depending on the type of integration testing you are performing, test modules one by one or in groups. It’s important to ensure that the tests are executed in a systematic manner to catch all potential issues.

Step 4: Analyze Results and Fix Issues

Once the tests are executed, analyze the results to identify any issues or failures. If any issues arise, identify the root cause and fix them. This may involve debugging the code, fixing interface mismatches, or addressing data flow problems.

Step 5: Repeat the Process

Integration testing is an iterative process. After addressing issues, rerun the tests to ensure that the fixes have resolved the problem and that no new issues have been introduced. Continue testing until all modules integrate seamlessly.

Tools for Integration Testing

Several tools can help automate and streamline the integration testing process. These tools provide advanced features like test management, defect tracking, and reporting. Some popular tools for integration testing include:

  • JUnit: A widely-used framework for Java applications that supports both unit and integration testing.
  • Postman: An API testing tool that allows you to test the integration of different services and endpoints.
  • Selenium: A popular tool for automating web applications, Selenium can be used for integration testing of web-based systems.
  • SoapUI: A tool for testing web services, including REST and SOAP APIs, which are common in modern applications.

Integration Testing Challenges

While it is essential, it comes with its own set of challenges. Some common challenges include:

  • Complexity: As the number of components increases, the complexity of the integration testing process also grows, making it harder to manage and execute tests.
  • Resource Intensive: Integration testing often requires more resources, such as time, tools, and skilled testers, especially when dealing with large systems.
  • Dependency Issues: When testing multiple modules, issues related to dependencies between modules can complicate the testing process.

Key Takeaways:

  • Integration testing ensures that software components work together seamlessly.
  • There are different types of testing, including Big Bang, Top-Down, Bottom-Up, and Incremental.
  • Planning, developing test cases, executing tests, and fixing issues are crucial steps in the integration testing process.
  • Tools like JUnit, Selenium, and Postman can enhance the efficiency of integration testing.
  • Pursuing courses for software testers and training for testers can help you master integration testing and other QA testing techniques.

Integration testing is defined as testing where the software modules are integrated logically and tested as an gaggle. A software project consists of many software modules which are coded by the programmers. The purpose of this level is to expose defects in the interaction between these software modules if they are integrated.

Integration testing focuses on checking the data communication amongst these modules. It is called as I & T, String Testing and Thread testing.

Integration testing Approaches are:

  1. Big bang approach
  2. Incremental approach- which has divided into
  1. Top down approach
  2. Bottom approach
  3. Sandwich approach

Big bang approach:

Big bang approach is an procedure in which all components or modules are integrated together at once and then tested as unit. This combined set of components in the unit are not completed, the integration process will not execute.

Advantages:

It is convenient for small systems

Disadvantages:

1. Fault localisation will be difficult.

2. It is given the sheer number of interfaces that need to be tested in that approach; some interfaces link to be tested can be missed easily.

3. This can start only after all modules are designed where the testing team will not have not much time for executing the test phases.

Incremental approach:

Incremental approach is done by integrating two or more modules that are logically connected to each other and then tested for the proper functioning of the application. The other modules which are related are integrated and tested successfully.

Incremental approach is carried out by two different methods

  1. Bottom Up
  2. Top down

Stubs and drivers:

Stubs and drivers are dummy programs in integration testing used to facilitate the software testing. These programs behave as substitutes for missing models in the testing.

Stub – It is called by the module under test.

Driver- Calls the module to be tested.

Bottom-up approach:

Bottom up approach is a strategy in which the lower level modules are tested first. These tested modules are further used to facilitate the testing of higher level modules. This process continues until all the modules are tested.

INTEGRATION TESTING

Bottom up approach

Advantages

  1. In this fault localisation is easier.
  2. The time is not wasted waiting for all the modules to be developed like big bang approach.

Disadvantages

  1. The critical modules which control the flow of application are tested last and may be encountered to defects.
  2. The early prototype is not possible.

Top down approach

INTEGRATION TESTING

In this approach, the integration testing is done from top to bottom which follows the control flow of software system. These higher level system modules are tested first and then lower level modules are tested and integrated in order to check the software functionality. Stubs are used for testing if some modules aren’t ready.

Advantages

1. Fault localisation will be easier.

2. Possibility to obtain an early prototype.

Disadvantages

  1. Needs much of stubs
  2. Modules are tested at lower levels .
  3. Integration testing example

To test this scenario, we have to login to the system. We will see the account summary check with before summary and check with after summary with checking account and savings account. As a tester we have to verify with both checking and savings account. Testers should see that, after the transfer operation the same amount should reflect in the checking account as well as savings account. Here the priority is given to the login page, checking and savings account. Each of the modules is integrated logically.

  • The description of integration test plans
  • Methods or approaches of testing
  • Scopes and also out of scopes products of integration testing.
  • Roles and responsibilities
  • Testing environment.
  • Risk and mitigation plans.

Why You Should Pursue Courses for Software Testers

To excel in integration testing, a strong foundation in QA testing is essential. If you’re looking to improve your testing skills, consider enrolling in Training for testers that focus on both manual and automated testing. These courses provide practical experience, help you understand the intricacies of testing different components, and teach you to approach complex testing scenarios.

By learning through these courses, you can gain insights into integration testing strategies, understand testing tools and frameworks, and master best practices to become an effective QA tester. This training will not only boost your knowledge but also increase your employability in a competitive job market.

Conclusion

Integration testing is an indispensable part of the software development process, ensuring that different components work together effectively. By conducting thorough integration testing, you can uncover potential issues early, improve system reliability, and deliver higher-quality products. As you pursue a career in QA testing, gaining expertise in integration testing through courses for software testers will equip you with the skills necessary to tackle this crucial phase of software testing.

Ready to take your QA testing career to the next level? Explore quality assurance tester training today and start your journey to becoming an expert in integration testing and other testing methodologies.

88 Responses

  1. 1. Ans. : The examples of the scenarios/software for each of above different types of testing:
     Integration Testing: For example the testing done to combine with Bluetooth & headphone application.
     Unit Testing: Unit testing is done to test the working of a audio application software in connection with the speaker.
     White Box Testing: This testing is done to identified the defects like inconsistent data flow, interface mismatch, inconsistent control flow, failures in communication.

  2. The scenarios/ software for each of above different types of testing: eg: NET BANKING
    Big Bang: We need to test entire Bank Application with all the developed modules.
    Top down approach: In Top down approach , the high level modules are test first like Account summary, Bill Payment ,Transfer/send ,Special offer & deals then low level modules (login , profile &setting) are tested.
    Botton up Approach :In Botton up approach ,low level modules are tested first like login, profile &setting
    and then high level models(Account summary, Bill Payment ,Transfer/send ,Special offer & deals) are tested.Then they both are integrated & tested together to study the behaviour other modules.

  3. Bigbang Approach : for Example on Wells Fargo home page if You click on location, It should show find wells fargo location and map of USA. IF you are looking for specific Location depedening upon criteria Like ATM or drive up bank ,24 hour bank, safe deposit box service ,foreign currency exchange than you should be able to view only particular locations ,so integration of this small tasks falls under bigbang approach .
    Top to Bottom : In this Approach high level modules are integrated first like Sign On, Morgagr Loans, Career ,Online Banking ,Small Business and then integration of small modues like Home Lending Rate & Payment Calculator, buy home, home improvement under Mortgage loan is going to get integrated.
    Bottoms up : In this approach it is opposite to Top to bottom ,small modules like payment calsulator ,buy home tab ,home improvement all those small components under morgage loans are tested first then it gets integrated with other branches like career , Online banking , Sign on .

  4. Integrated testing – different modules are integrated together to test the behaviour of the software.
    eg: online shopping site in which we shop in one site and we will pay using pay pal. here the unit test will be done in each module then all modules are integrated to test the behaviour of the software.
    Big Bang approach: small components or modules are tested first then they are integrated together to test the interface between them.
    eg: online internet banking in which fund transfer, bill payment, account summary etc all the functions are unit tested first and then combined together in the banking site

  5. The examples of scenarios software for each of above different types of testing:
    Big bang approach: a small modules are tested first and then they are combined together. Example of testing a loan application, online banking…
    Top down approach: testing is done from top to bottom and then the low modules are joined to test the whole system. Example of the The add to cart…..
    Bottom approach: this testing is performed to test the integration between the programs of the software using the development tools. example: bank accounts, carts, sales.

  6. Big bang approach: All modules or components are integrated simultaneously after which everything tested as a whole.
    eg: Suppose an application has 3 modules say ‘Login page’, ‘Mail box’ and ‘Delete mails’. All the three modules are integrated simultaneously and then the testing is performed.
    Top down approach: Testing is done from top to bottom. High level modules are tested first and then the low level modules then joined together to test the whole system. Sometimes a dummy module also called as ‘Stubs’ is used to test if any 1 module is not ready for integration.
    eg: Suppose we have 3 modules 1,2 and 3 and are available for integration. whereas, we also have sub modules which are still under development and cannot be integrated at this point of time. Hence, Stubs are used to test the modules. So, Firstly main modules 1, 2 and 3 are tested and then the Stubs.
    Bottom top approach: This is reciprocate of top down aproach. First low level modules are tested then high level modules are tested and then both are combined and tested together. Here also a dummy module is used.
    eg: Here, sub modules are tested first and then the main modules. If the main module is not developed a dummy module called ‘Drivers’ is used to stimulate the main module.

  7. Integration Testing : This Type of testing is done by developers . Different modules of an application are integrated together and their behavior is tested accordingly. This type of testing increases the reliability of the software . Defects like inconsistent data flow and interface framework errors can be Identified . There are 3 types of Integration Testing .
    1.) Bing Bang Approach : The individual modules are not integrated until all the modules are ready.
    2.) Top-Down Approach :Testing takes place from top to bottom. High-level modules are tested first and then low-level modules .Stubs are used as temporary module if a module is not ready for Integration Testing.
    3.) Bottom Up Approach : Testing takes place from bottom to up. Lowest level modules are tested first and then high-level modules. Drivers are used as a temporary module .
    4.) Hybrid Integration :It is the combination of both Top-down and Bottom-up approaches.

  8. bigbang testing is when small components or modules are tested first then all units are linked at once for testing for a complete system. Top-down testing, is testing from high level modules first then down to the low level modules and finally integrating the low level modules to a high level to ensure the software is working or behaving as expected. Bottom-up testing is done from bottom to up. Lowest level modules are tested first then the highest level then integrating the high level to the low level to test a a whole.

  9. Integration testing:it is a form of putting together all components of application which are unit tested and all other components that make for the whole system.There are 3 testing approach in this.
    Big bang approach:In this small components are tested first and then they are combined together to test the interface between them.
    Top down approach:In this High level modules are tested then low level modules are tested.then low level modules are join together to test the whole system.
    Bottom up approach:In this low level modules are tested first and then high level modules are tested.Both Top down and Bottom up Approach both use dummy module to test if the module is not ready for the integration.

  10. Consider an online banking application:
    Big Bang approach: each module is tested individually and then combined together and tested as a complete system.
    Eg: account summary, fund transfer etc are tested first then all together are tested to form complete application.
    Top down approach: high level modules were tested first then low level modules are tested and then both are integrated together to test complet system.
    Eg: high level modules like bill pay, fund transfer are tested first and then low level modules like sign in , account settings are tested.
    Bottom up approach: low level modules are tested and then high level modules are tested and integrated together and tested for complete system.

  11. In Big Bang Approach, all components/units are first tested individually and then tested together as a single system.
    In Top-Down Approach, test all the units/components from the top layer first, then integrated the components with next layer down. This process would repeat until all layers are integrated and tested together. Eg: gmail application: test login functionality from the top layer then integrated with Mailbox from next down layer, and then compose mail and so on.
    In the Bottom-Up Approach, first test each component of the bottom layer and then integrate them with components of the next layer up. This is repeated until all components from all layers are integrated.

  12. In the refrigerator testing for making of cubed ice is like unit testing and then testing the features like cubed ice along with crushed ice , the lock and unlock feature of the ice maker together is then called Integration testing.
    In big bang integration testing approach, individual modules are integrated until all the modules are ready, and all or most units are combined and tested in one go.
    In top down approach, testing is done from top to bottom. High level modules are tested and then low level modules tested.
    Bottom up approach in this testing Low level modules are tested first and then high level modules are tested.
    The Integration testing is performed by the developers to test the integration between the programs of the software using the development tools. The defects like inconsistent data flow, interface mismatch, inconsistent control flow, failures in communication can be identified using the integration testing is called white box testing.

  13. Example: Adobe Photoshop
    Big bang approach- All the individual features of the software are tested first before the software as a whole is tested
    Top Down approach-Major tools like layer, dodge tool, pen tool, blur tool, etc are tested first and then small features like open, save, view , etc are tested.
    Bottom Up approach-In this type all the small features are tested first and then the major tools are tested.

  14. Integration testing is a form of putting together all the components (programs or units) of a application which are unit tested and all other components that make for the whole system.
    Big Bang approach: small components or modules are tested first before the software as a whole is tested.
    Top down approach: Testing is done from top to bottom. High level modules are tested and then low level modules tested.
    Bottom up approach: In this testing Low level modules are tested first and then high level modules are tested.

  15. Integration Testing includes Big bang approach,Top Down approach and Bottom up approach ,
    If we take example of a retail software, it includes POS system, Ware house management system, Payment receiving,Sales person data.
    In Big bang approach testing components including small components and modules are combined together and tested but first these components are tested separately In Top down approach , higher level components are tested first and then lower level components are tested.
    In Bottom up approach, lower level components will be tested first and the higher lever eg. Payment links in the bank will be tested first and POS system will be tested later.

  16. a. Big bang approach: This approach tests all the small modules like mini statement, deposit, withdraw, view statement etc. and then combined together as system to test.
    b. Top down approach: this approach tests all the high-level modules like, deposit, withdraw, transfer etc. and then the low-level modules are tested. If any of the higher modules are not ready for test then u can use the dummy modules instead are called stubs for testing.
    c. Bottom up approach: This is opposite of top down approach. this approach tests all the Lower-level modules first and then the Higher-level modules are tested. If any of the Lower modules are not ready for test then u can use the dummy modules instead are called Drivers for testing.

  17. Integration Testing is in which individual software modules are combined and tested as a group. I t occurs after unit testing and before validation testing. There are 3 types of approaches in integration testing.
    Big bang approach : Most of the beveloped modules are coupled together to form a complete software system or major part of the and then used for integration testing.
    Top down approach : The testing is done top to bottom. First High level modules are tested and then low level module are tested.
    Bottom Up approach: In this approach Low level modules are tested first and then high level modules are tested . Then they both are integrated and tested together.

  18. Example of a Telecommunication site: Verizon Wireless
    Big Bang Integration testing approach: modules or small components sus as “about us, News, Careers, Brochures and more” are tested first then they are combined together to test the interface between them.
    Top Down Integration testing approach: High level modules are tested first for example, “search, Phones, Plan, Sign In” then low level modules tested such as “Smartphones, Basic Phone, Trade in Phone. Then the low-level modules are joined together to test the whole system
    Bottom Up Integration testing approach: In this scenario, Low level modules are tested first, ie Smartphones, Basic Phone, Trade in Phone, and then high-level modules, ie search, Phones, Plan, Sign In are tested. Then they both levels modules are integrated and tested together to study the behavior of other modules.

  19. INTEGRATION TESTING: It is a level of software testing where individual units are combined and tested as a group. There are 3 types of testing approach in this.
    They are:
    Big bang approach: In this small components or modules are tested first then they are combined to test the interface between them.
    Ex: if you consider a Gmail application, in big bang approach we will test inbox, sent, trash etc individually, and combined to test the interface between them.
    Top down approach: High level modules are tested, and then low-level modules tested. Then the low-level modules are joined together to test the whole system.
    Bottom up approach; Low level modules are tested first, and then high-level modules are tested. Then they both are integrated and tested together to study the behavior other modules.

  20. Once the the units of application are tested individually, all units are put together and tested for whole application
    which is called Integration testing. Integration testing can be done in three different ways:
    Big bang approach: High and low level components of application are randomly combined together to do integration testing.
    Top down approach: High level modules are tested first, second low level tested then combined to do integration testing.
    Bottom up approach: Low level modules are tested first, second high level tested then combined to do integration testing.

  21. In Integration testing there are three types:
    1- Big bang approach: online, account sumary, fund transfer and more.
    2- Top to bottom approach: online banking, test also the major comportment and the minor comportment such as search, check out .
    3- Bottom up approach: tests the minor componements of the software such as gift card, sale, orders, payments.

  22. An online store such as Aliexpress.com can be used as an example for the three types of integration testing:
    Big bang approach: All different links or components such as ‘Cart’, Wish List, Sign in, Categories are created and integrated together and then they will be tested.
    Top-down approach: High level or main modules (eg. links, sign in, etc) are tested then low level or sub-modules will be testing. STUBs are used for this approach to simulate the submodules.
    Bottom-up approach: Testing is done from sub modules to main modules and if the main module is not developed a temporary program (DRIVERS) is used to simulate the main module.

  23. 1. Write the examples of the scenarios/ software for each of above different types of testing
    Eg. Online Banking sysytem
    Big bang Approach-In this small components or modules are tested first then they are combined together to test the interface between them.
    Eg. In a fund transfer module each units debit and credit accounts can be tested separately ,then test the interface between the two accounts to check whether the function is working properly
    Top down Approach -This testing is done from top to bottom. High level modules are tested and then low level modules tested
    Eg . Again in an Online Banking system High level modules like Fund Transfer , Mortgage Calculator , Account Summary can be tested , and then debit and credit on accounts , interest calculation etc can be tested
    Bottom Up Approach-Low level modules are tested first and then high level modules are tested. Then they both are integrated and tested together to study the behaviour other modules.
    Eg. First the low level modules like updating account balance , calculating interest etc are tested then high level modules like fund transfer , mortgage calculator etc are tested

  24. Integration testing is a form of putting together all the components (programs or units) of a application which are unit tested and all other components that make for the whole system.
    Big Bang is an approach to Integration Testing where all or most of the units are combined together and tested at one go. This approach is taken when the testing team receives the entire software in a bundle. the former tests only the interactions between the units while the latter tests the entire system.
    Top Down is an approach to Integration Testing where top-level units are tested first and lower level units are tested step by step after that.
    Bottom Up is an approach to Integration Testing where bottom level units are tested first and upper-level units step by step after that. T

  25. Integration Testing : This Type of testing is done by developers . Different modules of an application are integrated together and their behavior is tested accordingly. This type of testing increases the reliability of the software . Defects like inconsistent data flow and interface framework errors can be Identified . There are 3 types of Integration Testing .
    1.) Bing Bang Approach : The individual modules are not integrated until all the modules are ready.
    2.) Top-Down Approach :Testing takes place from top to bottom. High-level modules are tested first and then low-level modules .Stubs are used as temporary module if a module is not ready for Integration Testing.
    3.) Bottom Up Approach : Testing takes place from bottom to up. Lowest level modules are tested first and then high-level modules. Drivers are used as a temporary module .
    4.) Hybrid Integration :It is the combination of both Top-down and Bottom-up approaches.

  26. Integration testing: In this testing,we mainly focus on interface/data flow between the modules rather than unit testing
    Big bang approach: Here all the modules will be integrated once and then tested ,so all the modules should designed before testing
    Top-down approach: Here higher priority module will be tested first followed by low priority module.Here we use many stubs .for example in banking project , with out sign in ,we cant go to other module
    Bottom- up approach : Here low level module is tested with high level module,until all the modules are tested.Here we use drivers
    Advantage : we can use dummy modules,rather than waiting for all the modules to be developed ,

  27. Take an example Quick books software.
    Quick books will have different sections Ex: Vendor mgt, Payments, Audit,
    Each section for ex vendor mgt will call lover modules to get data and process data.

    In Big Bang approach test the all the flows in Quick books through the user interface.

    Top Down approach: we will test the vendor mgt first (like add new vendor or delete vendor) and test the lower modules.

    Bottom Up approach: Test low level components first.

  28. The Integration testing is performed by the developers to test the integration between the programs of the software using the development tools.
    The scenario for integration testing is Online Banking.

    Big bang approach:
    In big bang approach all modules like login, fund transfer, bill payment, account summary etc are unit tested individually and integrated. The entire application is tested after integration.

    Top down approach:
    This testing is done from top to bottom.
    In top down approach high level modules like fund transfer, product and services, chequing , savings are tested and low level modules like message alert, order new cheque book, print are tested. Then the low level modules are joined together to test the whole system.

    Bottom up approach:
    This testing is reciprocate of the top down approach
    Low level modules like message alert, order new cheque book, print, nick name accounts are tested first and then high level modules fund transfer , pay biils, chequing , savings are tested. Then they both are integrated and tested together to study the behaviour other modules

  29. Reading Assignment to be submitted by 3-28-2019
    Integration Testing:
    This type of testing is essentially putting together all the different modules/components of a software that are unit tested and then testing the whole unit.
    Example: Hot mail
    Pre-condition- the client must be registered with hot mail and must possess a hot mail address.
    Test: The programmer will put together the log in function, the open e mail, the delete, the forward, the spam and the mark as read functions. Then the whole unit is then tested for functionality, inter phase capability etc.
    Big Bang Testing:
    All the modules are individually tested and then put together before being tested as a unit to test the interface between them.
    For example, the hot mail. The different modules such as log in, log out, forward, delete, spam and so on are individually tested. Then they are put together and the interface relationship is then tested.
    Top down approach
    In this type of testing, the big modules are tested, then the lesser modules are joined o them and the whole component I tested as a unit to ascertain the functionality of the modules and the relationship between the interface. Sometimes, a dummy module is used if a module is not yet ready.
    For example-hot mail
    The log in module is tested. Then the forward, module and so on are added before a full unit test is done. If any one of the lesser modules is not ready, a dummy is used.
    Bottom up approach
    This is the opposite of the Top down testing. The low-level modules are tested after which these are integrated to the high level models and the whole unit is then tested. If any of the high-level module is not ready, a dummy is used.
    For example-hot mail.
    The forward, delete, and trash modules etc. are first tested. These are then integrated with the log on module and the whole unit is then tested.

  30. In integration testing, the interfacing between the modules inter-connected with each other are tested. Eg: Gmail, shopping cart
    Big Bang Approach: small components or modules are tested first then they are combined together to test the interface between them. Fund Transfer etc.
    Top down approach: This testing is done from top to bottom. High level modules are tested and then low level modules tested. Then the low level modules are joined together to test the whole system In this approach,
    Bottom up approach: testing takes place from bottom to top, i.e., modules at bottom layer are integrated and tested first and then sequentially other modules are integrated as we move up

  31. Integration testing is the testing carried out when all the units are put together to form the system as a whole. There are different approaches to integration testing.
    – Big Bang testing. Here all the parts of the application are put together in one shot and the system behavior is tested. This may work for small projects, where there are only a few modules and puitting them together will be easy. However in large systems, this type of testing causes the following issues : a) waiting until all the modules are developed. b) introducing multiple interfaces simultaneously, so that its difficult to identify point of failure. some parts may not be adequate;y tested.

    – Incremental testing. In this case, few of the modules are put together and placeholders are used for modules that are not yet ready. There are 2 types of incremental testing: a) Top-down b) Bottom-up

    a) Top down approach: Here the testing is conducted from the main module to sub module. Placeholders may be used when sub modules are not ready, placeholders for sub-modules are called stubs. Stubs accept input and provide hard coded output as per specification. A good example off stub would be a print function, which would provide hard coded output.

    Advantage: the major module will be tested thoroughly
    disadvantage: stub programs should be developed. actual sub-module may have I/O issues. sub-module may be more complicated than the stub.

    b) Bottom-up approach: Here the sub modules are tested and the main module is simulated using Drivers. Drivers are code that provide input to other modules. Good example of a driver would be login module, which provides the username which will be used in all sub-modules.
    Advantage: sub modules are tested thoroughly, advantageous iff more functionality is within the sub modules. test conditions are easier to create, test results are easily observed.
    Disadvantages: Driver modules must be developed. Interface is not really tested until the actual module is available. Also testing of the major module is deferred, so any issues at that point might be more critical.

  32. Write the examples of the scenarios/ software for each of above different types of testing.

    Big Bang approach – All the hardware and software components are integrated and tested as one system.
    Example:Suppose we have 4 modules from A to D. All the 4 modules are integrated simultaneously and tested.

    Top Down Approach- This type is Testing is done from top to bottom. First the high level modules are tested first and then low level modules are tested. The low level modules are joined together to test the integration and sometimes a dummy module is used if any one module is not ready for integration. Dummy module is called the stub.
    Example: Login functionality is first tested -> inbox ->compose mail -> attach files

    Bottom Up Approach – It is a reciprocate of too down approach. Low level modules are tested first and then high level modules are tested. Then both the integration is tested to see the behavior. Even here dummy module is used if any one module is not ready for integration. Here the dummy module is used is called the driver.
    Example can be house construction

  33. Examples of the three types of component integration testing, Big Bang Approach, Top Down Approach
    Bottom Up Approach would be:

    Scenario: ATM software is being developed. There are three modules 1) transaction request from the customer 2) ATM validates transaction request. 3) ATM sends request to the Bank and receives response.

    Big Bang Approach – In the Big Bang Approach, each program would be tested individually, then the pgms would be tested together to test the Interface between them. The testing would be: the client enters a transaction request into the ATM, the ATM would send the request to the Bank. The Bank would send a response to the ATM for the customer’s request. The ATM would act upon the Bank response and either perform the customer’s request or deny the request.

    Top Down Approach – In the Top Down Approach, the high level programs would be tested, then the lower level pgms would be tested. For the component integration test, if the lower level pgms were not ready yet, dummy modules would be used in their place. In the ATM scenario, the ATM software would be the high level pgm(s) and would be the focus of the testing. The low level pgms might be the customer transaction request and interfacing with the Bank.

    Bottom Up Approach – In the Bottom Up Approach, the lower level programs would be tested, then the higher level modules would be tested. For the component integration test, if the higher level pgms were not ready yet, dummy modules would be used in their place. In the ATM scenario, the lower level pgms such as the Customer entering the transaction request and the ATM’s interfacing with the Bank would be the focus of the testing.

  34. Examples of the scenarios/software for different types of testing:
    Big Bang Approach:
    Function of software is tested individually like text box, search, link, buttons etc. and tested again by combining all functions.
    Top Down Approach:
    In this approach, high level testing is performed first like login, payments, transfers etc and low level testing like text box validation is performed second.
    Bottom Up Approach:
    In this approach, low level testing like text box validation is performed first and high level testing is performed second like login, payments, transfers etc.

  35. Scenario for integration testing could be social media like Facebook.
    1. In Big Bang Approach, small or modules like people search, friendship request, friendship notifications, are parts of the small components or modules which are tested first. Then they are combined together to test the interface between them.
    2. In the Top Down Approach, the high level modules like the accounts username, passwords, videos, audio, profile and other pictures upload are considered.
    3. In the Bottom Up Approach, the low modules are then tested first before the high modules are tested.

  36. Integration testing is white box testing, done by developer.
    In Integration testing in which individual software modules are combined and tested as a group.
    There are 3 types of testing approach.

    1) Big bang Approach-In this small components or modules are tested first then they are combined together to test
    the interface between them. Eg: account summary, fund transfer etc are tested first then all together are tested to form complete application.

    2) Top down Approach -This testing is done from top to bottom. High level modules are tested and then low level modules tested
    e.g. in an Online Banking system High level modules like Fund Transfer , Mortgage Calculator can be tested first
    and then accounts , interest calculation, sign in etc can be tested

    3) Bottom Up Approach-Low level modules are tested first and then high level modules are tested.
    Then they both are integrated and tested together to study the behavior other modules.
    e.g. First the low level modules like account balance , calculating interest etc are tested then high level modules
    like fund transfer , mortgage calculator etc are tested.

  37. Bing Bang Approach : The individual modules are not integrated until all the modules are ready.Eg: account summary, fund transfer
    Top-Down Approach :Testing takes place from top to bottom. High-level modules are tested first and then low-level modules. eg bill pay, fund transfer ,deposit.
    Bottom up approach: Low level modules are tested first, second high level tested then combined to do integration testing.eg account, search, department, orders.

  38. Facebook mobile app

    Big bang approach: small components or functionalities such login, live video, photo, check in, market place, messenger, and etc. All these different functionalities are being tested and then combined together to test the interface between them.

    Top down approach: in this approach, the high level modules are being tested then the low level modules. After both modules are tested, they are combined together to check the whole system.

    Bottom up approach: this approach is the opposite of the top down approach. Where we started with low level modules and then the high level. Then they are combined or integrated to see their behavior.

    Integration is a type of white box testing and is done by developers.

  39. Integration testing lets consider the example YouTube.
    Here lot of small or individual modules are tested and integrated together according to the order of importance )most visited or used).
    Playlists, history, watch later, liked videos, ,downloading and playing existing content and uploading and posting original content, user’s home page, e.g. search bar, create video, YouTube apps, messages, notifications, profile settings, trending, subscriptions, help, and feedback, etc are some of the Individual functions / modules.

    In Big bang approach, the modules tested individually and then combined to test the interface between them are playlists, history, watch later, liked videos, etc would be. For example, relevant suggested video content should be based on the user’s previous viewing history and previously “liked” content.

    .

    In Top down approach, high level modules such as downloading and playing existing content and uploading and posting original content, are tested first followed by low level modules like, editing titles, descriptions, keywords and privacy settings. After that high and low are integrated together to test full functionality.

    In Bottom up approach, low level modules such as, links to different functions on the user’s home page, e.g. search bar, create video, YouTube apps, messages, notifications, profile settings, trending, subscriptions, help, and feedback are tested first and then the high level modules like uploading, downloading, playback, writing and sending messages, editing profile details, etc.

  40. Examples of the scenarios/ software for Integration testing,Big Bang approach, Top down approach and Bottom up approach. :

    Integration testing: In this type of testing, individual models or units are tested during the Unit testing and then combined or brought together. For example: in a gmail application, if we need to test Login page ,Inbox or Delete Mails, we would not be testing each of these seperately , but are going to find out the communication between the modules as in how is the login page linked to Inbox and how is the inbox mail page linked to delete mails module.

    Big Bang Approach:Small components or modules are tested first before the software as a whole is tested.Example Fund transfer online from one account to another.
    Top down approach: This kind of testing is basically where High level modules are tested then low level modules are tested. Then low level modules are joined together to test the whole system .Example: Lets take a simple gmail application: here we test the login functionality which forms the top layer then integrate it with mailbox from next layer, and then compose mail etc.
    Bottom up approach: This is the reverse of the top down approach, here the low levels are tested first then the higher levels are tested. Drivers are used in this kind of testing.For example cameras. or other small units then the main master unit.

  41. Integration testing is a form of putting together all the components (programs or units) of a application which are unit tested and all other components that make for the whole system. The different modules are integrated together and their behavior is tested accordingly. This type of testing increases the reliability of the software and performance among the modules which are integrated. For example we have to test the working of a audio application software in connection with the speaker that is unit testing but when you want to combine with Bluetooth and headphone application is integration testing. There are 3 types of testing approach in this. They are:

    Big bang approach:
    In this small components or modules are tested first then they are combined together to test the interface between them.

    Top down approach:
    This testing is done from top to bottom. High level modules are tested and then low level modules tested. Then the low level modules are joined together to test the whole system sometimes a dummy module is used to test if any one module is not ready for integration.

    Bottom up approach:
    This testing is reciprocate of the top down approach. Low level modules are tested first and then high level modules are tested. Then they both are integrated and tested together to study the behaviour other modules. Even here dummy variables or the modules are used to test if the module is not ready for the integration.

    The Integration testing is performed by the developers to test the integration
    Example Integration Test Cases for the following scenario: Application has 3 modules say ‘Login Page’, ‘Mailbox’ and ‘Delete emails’ and each of them is integrated logically.

    Here do not concentrate much on the Login Page testing as it’s already been done in Unit Testing. But check how it’s linked to the Mail Box Page.
    Similarly Mail Box: Check its integration to the Delete Mails Module.

  42. Integration Testing- Individual software modules are combined and tested as a group. The main goal of this testing is to test the interfaces between the units/modules.
    * Big Bang Integration Testing
    In Big Bang integration testing all components or modules are integrated simultaneously, after which everything is tested as a whole.
    * Bottom-up approach:
    The Integration testing starts from the lowest module and gradually progresses towards the upper modules of the application. This integration continues till all the modules are integrated and the entire application is tested as a single unit. Sometimes a dummy module(STUB) is used to test if any one module is not ready for integration.
    * Top-down approach
    This technique starts from the topmost module and gradually progress towards the lower modules. Only the top module is unit tested in isolation. After this, the lower modules are integrated one by one. The process is repeated until all the modules are integrated and tested.

  43. Big bang approach – All the modules of the system are simply put together and tested – all the modules of Gmail login application ex: login page,compose,delete etc., intgrated and tested
    Bottom-up approach – Each module at lower levels is tested with higher modules until all modules are tested – ex: bank application like payment,transfers and then login
    Top-down approach-First high-level modules are tested and then low-level modules and finally integrating the low-level modules to a high level to ensure the system is working as intended.
    ex:login module is tested first and so on in order

  44. Integration Testing
    Big Bang Approach:
    In this small module are tested first and then integrated to test the interface between them.
    In this approach individual modules are not integrated until and unless the modules are ready.
    Example:
    In a banking application a customer needs to transfer money to a third party account. His current balance is $1000 and he is transferring $300 to another account.
    The Modules are
    1. Login
    2. Current Balance
    3. Deposit
    4. Withdraw
    5. Transfer
    Each module is developed by different developers
    • In the big bang approach wait for all modules to be developed
    • Disadvantage is that increases the project execution time and the testers should sit idle until all the modules are created.
    • Difficult to trace the root cause of the bugs.

    Top Down Approach:
    In this the Current Balance module is ready, Transfer module is not developed so we need to create Stub, which will accept and give back the data to the current balance module. Not a complete implementation of the Transfer module, it just simulates the data transfer between the modules to facilitate testing.

    Bottom Up Approach:

    In this approach Transfer module is developed and Current Balance module is not developed and we need to create a Driver to simulate to transfer between the modules.

  45. INTEGRATION TESTING

    ——————-

    1) BIGBANG APPROACH

    2) TOP-DOWN APPROACH

    3) BOTTOM-UP APPROACH

    EXAMPLE: http://WWW.IKEA.COM

    BIGBANG APPROACH :

    ——————–

    small functionalities( modules) checked first then all those small modules will be integrated with each other for better interface functionalities.

    ex:

    1) Search the products (low-level module)

    1) select products ( items) from the products list (low-level module)

    interface the selected product with the following high-level module for better workflow

    2) put them into “shopping cart”

    3) checked out

    4) payment

    All these modules checked individually and check finally combined all modules as a whole to check the interface with each other modules in order to complete the task

    * all low-level modules will not be integrated with high-level modules until all low-level modules are ready to integrate.

    topdown Approach

    —————-

    High-level modules are tested first then low-level modules tested then integrate all the low-level modules to test as a whole.

    basic functionality testing at the end of the cycle. because high-level modules tested first like online payment and shopping cart functionality(high-level module) check first. then selecting the product(low-level module) check later

    Bottom-up Approach

    ———————

    low-level modules are tested first high-level modules are tested later.

    search the product first (low-level module).

    select the product (low-level module).

    shopping cart and payment module (high-level module).

  46. Write the examples of the scenarios/ software for each of above different types of testing.
    Big bang approach:
    In this small components or modules are tested first then they are combined together to test the interface between them.
    Top down approach:
    This testing is done from top to bottom. High level modules are tested and then low level modules tested. Then the low level modules are joined together to test the whole system sometimes a dummy module is used to test if any one module is not ready for integration.
    Bottom up approach:
    This testing is reciprocate of the top down approach. Low level modules are tested first and then high level modules are tested.

  47. Component Integration testing is a form of Integrate/combine all modules / components (programs or units) of an application which are unit tested and test the behavior as a combined unit.
    • Big bang approach: In this small components or modules are tested first then they are combined together to test the interface between them. It is a good approach for small systems. It is easy to detect which module is causing an issue after integrated all individual modules.
    • Top down approach: This testing is done from top to bottom. High level modules are tested and then low-level modules tested and then low-level modules are joined together to test the whole system. sometimes a dummy module (Stubs) is used to test if any one module is not ready for integration.
    Examples: online shopping. It has different units/modules like login, product catalogue, shopping cart, billing, payment , shipping and package tracking. Each module assigned to developer and they do coding in their local system individually and tested. Once individual modules are ready, they integrate all modules together and test the behavior of the application.
    • Bottom up approach: Low level modules are tested first and then high-level modules are tested. Then they both are integrated and tested together till all the modules are integrated and the entire application is tested as a single unit to study the behavior other modules.

  48. Integration testing: different modules are combined together and tested. idea behind of integration testing is to test the interface between modules.
    Big bang Approach: in big bang approach all modules are tested individually and combined together to test the interface.
    for example: wells Fargo login page ,account button,bills button are tested individually and put together.
    Top Down approach :In this approach testing is performed from high level modules to low level modules.for example
    in banking site like wells Fargo login page ,account summary,fund transfer, etc are tested first then other functionalities are tested like.help,search, financial planning, add choices.
    Bottom up Approach: its a vice versa of top down approach.modules are tested from low to high .

  49. Integration testing:
    For example, Amazon.com web application has to be developed by developers and that individual written programs are unit tested.
    Combining all the programs/units together of a application that make a whole system.
    This type of testing increases the reliability of the software and performance among the modules which are integrated.
    For example we have to test the working of a amazon application software in connection with
    the today’s deals,your amazon.com,registry,account,cart…etc that is unit testing
    but when you want to combine with alexa, prime video, Kindle E-readers & Books,..all together their behaviour is tested.
    There are 3 types of testing approach in this. They are:

    Big bang approach:
    In this the small modules like help,registry,..etc are tested for then
    they are combined together to test the interface between them.

    Top down approach:
    This testing is done from top to bottom.
    Here high level modules like account login,cart,..etc are tested first and then low level modules like help,giftcards,registry…etc are tested.
    Then the low level modules are joined together to test the whole system
    sometimes a dummy module is used to test if one module is not ready for integration.

    Bottom up approach:
    Here low level modules are tested first and then high level modules are tested.
    Then they both are integrated and tested together to study the behaviourother modules.
    The Integration testing is performed by the developers to test the integration between the programs of the software using the development tools.
    The defects like inconsistent data flow, interface mismatch, inconsistent control flow, failures in communication can be identified using the integration testing.

  50. The main function or goal of integration testing is to test the interfaces between the units/modules.
    There are fundamentally 2 approaches for doing test integration: 1) Bottom-up approach 2) Top-down approach.

    Bottom-up approach:- this testing starts from lowest or the innermost units of the application, and gradually moves up. this integration continues till all the modules are integrated and the entire application is tested as a single unit.
    The advantage of this approach is that, if a major fault exists at the lowest unit of the program, it is easier to detect it, and corrective measures can be taken.
    the disadvantage is that the main program actually does not exist until the last module is integrated and tested. As a result, the higher level design flaws will be detected only at the end.
    Top-down Integration:- In Top to down approach , testing takes place from top to down following the control flow of the software system. Take help of stubs for testing.
    Advantage:- Critical modules are tested on priority, major design flaws could be found and fixed first.
    Disadvantage:- Need many stubs. Modules at a lower level are tested inadequately.

  51. Integration testing: we will integrate the unit tested module one by one & test the behavior as a whole combined unit.
    Big bang approach: Here all the modules are integrated simultaneously and then everything is tested as whole Eg: In health insurance application all the tested modules like register account, login account, purchase plan, submit claims, manage life events are integrated and tested as whole.
    Top down approach: In this high level modules are tested first and then low level modules and integrating the low level modules to high level to test the behavior of the system as intended.Eg: Here high level modules like purchase plan, submit claim, manage life events are tested first and then integrated with low level modules like register account, login
    Bottom up approach: In this low level modules are tested first and then high level modules and integrating the high level modules to low level to test the behavior of the system. Eg: Here low level modules like register account, login
    are tested first and then integrated with high level modules like purchase plan, submit claim, manage life events.

  52. Big Bang Approach – Here, all components or modules are integrated together at once and then tested. Let’s take an example of net banking. So, a net banking application has many modules like: login, profile, settings, alerts, account summary, bill payments, transfer, special offers, deals,etc. In big bang approach, all of these modules are integrated simultaneously and tested as a whole.

    Top Down Approach – The testing is done from top to bottom. Here, the high-level modules are tested first before testing the low-level modules. Finally, the low-level modules are joined together to test the whole system. Sometimes, a dummy module (stub) is used to test, if any module is not ready for integration. Example, here high-level modules like account summary, bill payments, transfers are tested first before testing low level modules like: login, profile, settings.

    Bottom Up Approach – The testing is done from bottom to up. At first, low level modules are tested and after that high level modules are tested. Then they both are integrated and tested together to study the behavior other modules. Even here dummy variables or the modules(drivers) are used to test if any module is not ready for the integration.

  53. Integration Testing:
    Unit tested individual components/modules are tested together to check the proper behavior altogether.

    Bing Bang Testing:
    All the components are developed , unit tested and integrated to check. This type of testing cannot localize defect.

    Top Down Approach:
    High level components are combined and tested first.And then the low level components are joined together to test.

    Bottom Up Approach:
    Low level components are combines and tested first.Later the high level components are joined together to test.

  54. Integration testing is a type of white box testing,it is performed by the developers to test the integration between the programs of the software using the development tools.integration testing is a form of putting all the programs or units of a application which are unit tested and all other components make for the whole system.
    this type of testing is reliability and performance among the modules which are integrated.
    Bigbang approach:small components or modules tested first then combined together to test the interface between them.
    eg.first will test bluetooth,speakers,headphones then will combine togethr and test the audio.
    Top down approach:itis done from top to bottom,first high level modules are tested and then low level modules are tested.
    eg.will check the audio,bluetooth,speakers
    Bottom up approach:this testing is reciprocate of topdown approach.low level modules are tested first then high level modules are tested.
    eg. first will test headphones,speakers,then bluetooth

  55. the different modules are integrated together and then performed test called integrated test. , bottom up approach in this case low level modules
    tested first and then high level module are tested .In big bang testing all modules are integrated together and tested,eg login, location finder

  56. Integration testing is a white box testing type and is performed by the developers to test the integration between the programs of the software using the development tools. This type of testing can identify defects like inconsistent data flow, interface mismatch, inconsistent control flow, and failures in communication.

    There are 3 types of approach in integration testing..
    1) Big bang approach is where small components are first tested and then combined with the other modules to test the interface between them
    2) Top down approach is where the high level modules are tested first followed by the low level modules, and then they are both integrated to test the whole system.
    3) The Bottom up approach is where the low level modules are tested first followed by the high level modules, and then they are both integrated to test the whole system.

  57. Write the examples of the scenarios/ software for each of above different types of testing.

    Integration Testing:
    components/modules are tested together to check the proper behavior altogether.

    Bing Bang Testing:
    This type of testing cannot localize defect.This small components or modules are tested first then they are combined together to test the interface between them.

    Top Down Approach:
    This is a test done from top to bottom. High level modules are tested and then low level modules tested. The low level modules are joined together to test the whole system sometimes a dummy module is used to test if any one module is not ready for integration.

    Bottom Up Approach:
    This testing is done from top down approach. Low level modules are tested first and then high level modules are tested. Then they both are integrated and tested together to study the behaviour other modules. Even here dummy variables or the modules are used to test if the module is not ready for the integration.

  58. Bigbang approach: Google
    For example google has 3 components like search engine, maps and mail which has to be tested indivudually and then combined to test the integration between them.
    Top down approach:
    High-level modules are tested first and then low-level modules are tested. For example in Google I would first test the search engine then mail and then the maps. And then put them altogether to test their integration.
    Bottom up appraoch:
    Low levels modules are tested first and then high level modules are tested. For example in Google I would like to test maps, mail and the search engine. An then put them altogether to test their integration.

  59. Integration Testing: In Integration testing, the individual software modules are integrated logically and tested as a group.
    There are three types of Integration testing:
    1) Big Bang Type: Here all the components are integrated at once and then tested.
    2) Bottom-Up: In this strategy, each module at a lower level is tested first and then the higher-level modules until all the modules are tested.
    3) Top-Down: In this approach, the higher-level modules are tested first and then the lower-level modules.
    Bottom-Up and top-down approaches sometimes use dummy modules called stubs and drivers.
    For Example: In Wells Fargo banking site, we can see there are so many modules like Banking and credit cards, loan and credits, wealth management, Investing and Retirement, etc
    In Big Bang type, all the modules are integrated at once and then tested. Whereas in other two approach only one or two module is integrated and tested. Basically they check the interface between the modules like interface failure problems or integration of some modules effect the performance of the system.

  60. Example of the scenarios/ software for each above different type of testing :
    Big bang approach: It is a integration testing strategy where all units are tested and are linked at once , resulting in a complete system.
    Top Down approach:It is an approach to integration testing where top integrated modules are tested and branch of the modules are tested step by step until the end of related module.
    Bottom up approach: Is an approach used in integration , which is a level of software testing where individual units are combined and tested as groups.

  61. Integration testing is a form of putting together all the components of an application that are unit tested. The different modules are integrated together and their behavior is tested accordingly. There are 3 types of testing approach:
    1)Big Bang Approach: In this, all small components are tested first then they are combined together to test the interface between them.
    2)Top-Down Approach: Here testing is done from top to bottom. High-level modules are tested first and low level then the low-level modules are joined to test if they are not ready they use dummy modules.
    3)Bottom-Up Approach: Here first the low-level modules are tested and then high then they join all together for testing. Here also they use dummy modules if they are not ready for testing.

  62. Integration testing is done to make sure all functionalities of all modules work well together in a software. For example, online shopping. When we purchase something on amazon, it gives us an option to pay via paypal. Both websites are integrated together.

  63. Integration testing
    Defined as a type of testing where software modules are integrated logically and tested as a group.
    It comes after unit testing and also called as a string or thread testing. The purpose is to expose defects in the interaction btw the software modules when they are integrated, done by developers.
    Bigbang
    All the components are integrated all at once and tested. Convenient for small systems whereas Fault Localization is difficult.
    Top Down is an approach where top-level units are tested first and top level units are tested step by step after that.
    Bootom up is an approach where bottom level units are tested first and top level units are tested secondly.

  64. 1. Write the examples of the scenarios/ software for each of above different types of testing.

    Big Bang – an example is if there is a banking application needing testing, and the person handling the transfer module isn’t ready, the rest of the modules have to wait for them to finish before proceeding.
    Top Down – higher level modules are tested first such as a login module
    Bottom Up – lower level modules are tested first such as a transfer money module in banking application

  65. Big Bang Approach- In Gmail account there are different components like compose ,send, inbox. These modules are tested first and they are combined together to test the integration between the different components.

    Top Down Approach- In Gmail account the high level components like compose ,send, inbox are tested first and then the low level modules like sent, spam, starred are tested.

    Bottom Up Approach – In Gmail account the low level components like sent, spam, starred are tested first and then the high level modules are tested.

  66. Big Bang approach is when all the modules are tested at once. An example is when we use an ATM machine. All the different modules are first tested separately, than all together at once. This can include Cash withdraw, transfer fund, account balance, key pin/password, deposit check, and etc.

    Top down integration testing is when the high-level modules are tested first and lower level modules are tested after. A simple example we can include is the Gmail, which is an email provider. The purpose of an email is to communicate with a contact that has an email address. High level modules that will be tested will include, composing an email, attaching files/photos, and sending an email to another email address. Lower level modules will include Login and Password function.

    Bottom up approach is the opposite of top down integration testing. Lower level modules are tested first, followed by higher level modules, creating a pyramid effect. Telecommunication websites such as AT&T, Verizon, T-mobile, and etc are used for different purposes. A low-level module will be testing the Login Account & password. And the higher-level module can include paying bills, changing plan, and purchasing services associated with the company.

  67. 1. Big Bang approach – this approach involves all components/modules are linked at once and then tested as a unit. This results as a complete system. For example, withdrawing money from an ATM machine, the steps you must go through is inserting your card, selecting your language, adding your pin number, selecting your transacting, selecting your account, entering the amount of money that needs to be withdrawn, collecting your money, and then taking the receipt. This example works as a whole unit as it tests each component individually.

    Top-Down approach- this testing method is also known as incremental integration testing. This method allows the higher-level modules to be tested first and then the lower levels. All the components need to be logically related to each other. For example, online shopping on amazon, it gives us the option of paying through visa, MasterCard and American Express.

    Bottom-up approach- in this type of testing the lower-level modules are tested first and then the high-level modules are tested. This approach is also known as inductive reasoning. An example would be using drivers.

  68. Integration testing Approaches
    I
    I
    ————————————————————-
    I I
    I I
    Big bang approach Incremental approach
    I
    I
    —————————————————
    I I I
    Top down approach Bottom approach Sandwich approach

  69. My understanding of the material for the class assignment:

    Integration testing is a type of testing where modules are integrated and tested based on their interactions and data communications.

    There are 2 major approaches to integration testing: Big Bang approach and Incremental approach. Within the Incremental approach, there are 3 types: Top Down approach, Bottom Up approach, and Sandwich approach.

    The Big Bang approach tests the integration of all the modules at once and as a whole. While it is convenient in small systems, it raises difficulty in fault localization, there is the possibility of missed interfaces links, and there’s a limitation on time to execute testing since all modules need to be designed prior.

    Stubs and drivers are programs that substitute for missing components in the testing process. A stub is called by the module undergoing the test, while a driver calls the module to be tested.

    The Incremental approach tests the integration of two or more modules that are related.
    In the Bottom Up approach, lower level modules are tested prior to higher level modules in order to assist in the testing of these higher-level modules. The benefits of this approach include easier fault localization, as well as less limitations on time since all modules do not need to be developed. The downside, however, is that the most important modules are tested last and it is not possible to obtain the early prototype.
    In the Top Down approach, higher level modules are tested prior to lower level modules. The benefits of this approach include easier fault localization, and obtaining an early prototype is possible. However, this approach has a high need for stubs.

  70. Big Bang Testing is an approach in which all the modules are combined together to make a complicated system. The unity of different modules is then tested ,the integration process will not executed until all the components are completed.
    Top-Down Testing-It is a type of incremental integration testing in which testing is done by integrating or joining two or more modules by moving down from the top to bottom through control flow of architecture structure .High level modules are tested first, and then low level modules.
    Bottom Up Testing-The lower modules are tested first. The tested modules are then further used to facilitate testing of higher level modules.

  71. Integration testing:
    A software project consists of many software modules which are coded by the programmers. The purpose of this level is to expose defects in the interaction between these software modules if they are integrated.
    Integration testing Approaches are:
    1. Big bang approach 2. Incremental approach

    Incremental approach has divided into
    1. Top down approach
    2. Bottom approach
    3. Sandwich approach
    1. Big bang approach:
    Big bang approach is an integration testing procedure in which all components or modules are integrated together at once and then tested as unit. This combined set of components in the unit are not completed, the integration process will not execute. It is convenient for small projects.

    2. Incremental approach:
    Incremental approach is done by integrating two or more modules that are logically connected to each other and then tested for the proper functioning of the application. The other modules which are related are integrated and tested successfully.
    Incremental approach is carried out by two different methods
    1. Bottom Up
    2. Top down
    Stubs and drivers:
    Stub – It is called by the module under test.
    Driver- Calls the module to be tested.
    2.1. Bottom-up approach:
    Bottom up approach is a strategy in which the lower level modules are tested first. These tested modules are further used to facilitate the testing of higher level modules. This process continues until all the modules are tested.

    2.2. Top down approach
    In this approach, the integration testing is done from top to bottom which follows the control flow of software system. These higher level system modules are tested first and then lower level modules are tested and integrated in order to check the software functionality. Stubs are used for testing if some modules aren’t ready.

  72. Integration Testing

    A software project consists of many modules, Integration Testing check for the functionality of these modules when they are integrated, when they interact with each other. It basically checks the communication between these modules.

    Types of integration testing are:
    a).Big Bang approach
    b).Incremental approach – Top Down, Bottom Up and Sandwich Approach

    a). Big Bang Approach- This is type of testing is done by integrating all the modules together and testing the functionality. Usually done in smaller systems.

    b). Incremental Approach- Here the testing is done by integrating the modules which are logically connected to each other. They make use of ‘Stubs’ and ‘Drivers’ which are dummy programs and work as substitutes for missing modules.

    Top Down Approach: Testing is done on modules in a top- down method, the higher functionality modules are tested first. Testing is continued till all modules are tested.

    Bottom Up Approach: Testing is done on modules in a bottom up method, where the lower functionality modules are tested first. Testing is continued till all modules are tested.

  73. integration testing is a testing where the software modules are integrated and tested as an gaggle. A software project made up of many software modules and coded by the developers. In this level it will find the defects in the interaction between the software modules if they are integrated.
    It is focuses on the data communication between the modules. It is called I & T, String Testing and Thread testing.

    Integration testing Approaches are:

    Big bang approach
    Incremental approach- which has divided into
    Top down approach
    Bottom approach
    Sandwich approach
    It’s come under White box testing technique and done by the developers.

  74. The purpose of integration testing is to expose defects in the interaction between these software modules if they are integrated. Big bang approach is an integration testing procedure in which all components or modules are integrated together at once and then tested as unit. Incremental approach is done by integrating two or more modules that are logically connected to each other and then tested for the proper functioning of the application. Incremental approach is carried out by two different methods: Bottom Up and Top down. Bottom up approach is a strategy in which the lower level modules are tested first. In top down approach, higher level system modules are tested first and then lower level modules are tested and integrated in order to check the software functionality.

  75. Integration testing:
    For example, Amazon.com web application has to be developed by developers and that individual written programs are unit tested.
    Combining all the programs/units together of a application that make a whole system.
    This type of testing increases the reliability of the software and performance among the modules which are integrated.
    For example we have to test the working of a amazon application software in connection with
    the today’s deals,your amazon.com,registry,account,cart…etc that is unit testing
    but when you want to combine with alexa, prime video, Kindle E-readers & Books,..all together their behaviour is tested.
    There are 3 types of testing approach in this. They are:

    Big bang approach:
    In this the small modules like help,registry,..etc are tested for then
    they are combined together to test the interface between them.

    Top down approach:
    This testing is done from top to bottom.
    Here high level modules like account login,cart,..etc are tested first and then low level modules like help,giftcards,registry…etc are tested.
    Then the low level modules are joined together to test the whole system
    sometimes a dummy module is used to test if one module is not ready for integration.

    Bottom up approach:
    Here low level modules are tested first and then high level modules are tested.
    Then they both are integrated and tested together to study the behaviourother modules.
    The Integration testing is performed by the developers to test the integration between the programs of the software using the development tools.
    The defects like inconsistent data flow, interface mismatch, inconsistent control flow, failures in communication can be identified using the integration testing.

  76. Integrated testing- Integrated Testing is different modules/units are integrated together to test the behavior of the software.
    eg; Online shopping site, in which we shop in one site and we may pay via paypal, Debit card, credit card etc. here each module individually are tested and then all modules are integrated to test the behavior of the software.
    Integrated testing can be done by:
    Big Bang Approach: small components or modules are tested first and then they are integrated together to test the interface between them.
    Top down Approach: Testing is done from top modules to bottom and then the low modules are joined to test the whole system.eg; Add to the cart and Final check out.
    Bottom up Approach: This test is performed to test the integration between programs of software using development tools. eg; mode of payment , cart, sales.

  77. Integrated Testing; Different modules/units are integrated together to test the behavior of the software.
    eg: Online shopping site in which we shop in one site and we may pay via Paypal, Venmo, Debit card, credit card, etc. Here each module is tested and then all modules are integrated to test the behavior of the software.
    Integrated Testing includes:
    Big Bang Approach
    Top down Approach
    Bottom up Approach
    Big Bang Approach: Small components or modules are tested first and then they are integrated together to test the interface between them.
    Top down Approach: Testing is done from top modules to bottom and then the low modules are joined to test the whole system.
    eg; Add to the cart, and final check out.
    Bottom up Approach: This test is performed to test the integration between programs of software using development tools.
    eg: mode of payment, cart, sales etc.

  78. Integration Testing is different modules of an application are integrated together.
    There are 3 types of Integration Testing .
    1.) Bing Bang Approach : The individual modules are not integrated until all the modules are ready.
    2.) Top-Down Approach :Testing takes place from top to bottom. High-level modules are tested first. Stubs are used as temporary module if a module is not ready for Integration Testing.
    3.) Bottom Up Approach : Testing takes place from bottom to up. Lowest-level modules are tested first and then high-level modules. Drivers are used as a temporary module .

  79. Integration testing: In this testing, all the individual software modules are combined and tested as a group or unit.
    Big bang approach: small components or modules are integrated and tested as a group or unit. Eg: Wells Fargo online banking system. Small modules like user information, account, balance is combined and tested as a group.
    Top-down approach: login page, a profile page, and a data record page. We test first the data records then the data records integrated with the profile page and login page.
    Bottom-up approach: low level modules are tested first then the high-level modules. Eg: online shopping site like Amazon, we first search the products, add to the cart, bill payment and place order.
    Sandwich approach: It’s the hybrid approach that combines both the top-down and bottom-up approach integration testing methods.

  80. Integration Testing: It is level of software testing where individual units/modules/components are combined and tested as a group. It occurs after unit testing before system testing. This testing is done by the developer and they will integrate into a build or package or executable format and send it to the tester. So the developer only do the Unit and Integration Testing at the program level and rest of the testing is done by the Tester/QA.
    Big bang Approach: all components or modules are integrated together at once and then tested as unit. This combined set of components in the unit are not completed, the integration process will not execute.
    Top-down Approach: the integration testing is done from top to bottom which follows the control flow of software system. These higher level system modules are tested first and then lower level modules are tested and integrated in order to check the software functionality. Stubs are used for testing if some modules aren’t ready.
    Bottom-up Approach: the lower level modules are tested first. These tested modules are further used to facilitate the testing of higher level modules. This process continues until all the modules are tested.

  81. Integration testing is a type of testing in which different software modules are logically integrated and tested as a group to identify the defects or errors in the software early. It mainly verifies the flow of information or data transfer from one module to another. It focuses mainly on testing the interaction between the integrating links rather than the unit functionality of the software modules.

    For example, in a banking application there are different modules like login page, current balance, deposit, withdrawal, and transfer for the customer bank account. In integration testing these different modules are integrated and tested as a group to ensure the data and information transfer, like when the customer deposits or withdraws an amount, then the amount should be reflected in both the deposit or withdrawal and the current balance of the customer bank account.

    There are different approaches for integration testing:

    1. Big bang approach- in this approach integration testing begins only when all the different software modules are developed. Once all the modules are ready they are integrated together and tested as a group. This consumes a lot of time due to which very less time is given for testing execution phase, also fault localisation is difficult in this approach.

    2. Incremental approach- in this integration testing is done between two or more software modules as and when they are developed. Integration testing is carried out between two or more software modules that are logically related to each other to ensure proper functioning of the application. Then the other related modules are integrated too and tested and this process continues until all the modules are tested.
    There are three different types of incremental approach.
    Top-down approach, bottom-up approach, and a sandwich approach

    A. Top-down approach- in this approach higher level modules are tested first and then the lower level modules are tested and integrated as a group to check the functionality. Stubs are used as dummy program in place of a missing module to simulate the process but this doesn’t test and verifies the actual programming logic of the missing module.

    B. Bottom-up approach- in this approach lower level modules are tested and integrated first and then used to facilitate the testing of higher level modules and this process continues until all the modules at top level are tested. Drivers are used in place of missing modules.

    C. Sandwich approach also known as hybrid integration testing,is a combination of both top-down and bottom approach. In this approach top level modules are tested with lower level modules at the same time and both are integrated and tested as a system. Both stubs and drivers are used for this approach.

  82. Integration testing is a type of testing in which different software modules are logically integrated and tested as a group to identify the defects or errors in the software early. It mainly verifies the flow of information or data transfer from one module to another. It focuses mainly on testing the interaction between the integrating links rather than the unit functionality of the software modules.

    For example, in a banking application there are different modules like login page, current balance, deposit, withdrawal, and transfer for the customer bank account. In integration testing these different modules are integrated and tested as a group to ensure the data and information transfer, like when the customer deposits or withdraws an amount, then the amount should be reflected in both the deposit or withdrawal and the current balance of the customer bank account.

    There are different approaches for integration testing:

    1. Big bang approach- in this approach integration testing begins only when all the different software modules are developed. Once all the modules are ready they are integrated together and tested as a group. This consumes a lot of time due to which very less time is given for testing execution phase.

    2. Incremental approach- in this integration testing is done between two or more software modules as and when they are developed. Integration testing is carried out between two or more software modules that are logically related to each other to ensure proper functioning of the application. Then the other related modules are integrated too and tested and this process continues until all the modules are tested.
    There are three different types of incremental approach.
    Top-down approach, bottom-up approach, and a sandwich approach

    A. Top-down approach- in this approach higher level modules are tested first and then the lower level modules are tested and integrated as a group to check the functionality. Stubs are used as dummy program in place of a missing module to simulate the process but this doesn’t test and verifies the actual programming logic of the missing module.

    B. Bottom-up approach- in this approach lower level modules are tested and integrated first and then used to facilitate the testing of higher level modules and this process continues until all the modules at top level are tested. Drivers are used in place of missing modules.

    C. Sandwich approach also known as hybrid integration testing,is a combination of both top-down and bottom approach. In this approach top level modules are tested with lower level modules at the same time and both are integrated and tested as a system. Both stubs and drivers are used for this approach.

  83. Integration testing is a level of software testing where individual units or components are combined and tested as a group. The purpose of this level of testing is to expose faults in the interaction between integrated units. The approaches of integration testing are:
    a) Big bang approach- where all components or modules are integrated together at once and then tested as a unit.
    b) Incremental approach- where two or more modules that are logically connected to each other and then tested for the proper functioning of the application. It is divided into Top down approach and Bottom approach.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Share this article
Subscribe
By pressing the Subscribe button, you confirm that you have read our Privacy Policy.
Need a Free Demo Class?
Join H2K Infosys IT Online Training
Enroll Free demo class