Integration testing is a technique in which program modules are combined and tested as a single unit. This testing type is quite bulky and contains many approaches.
Big bang integration testing may be a process where all the software components are combined directly and make a sophisticated system. This unity of various modules is then tested as an entity. According to this checking method, the integration process will not be executed until all components are completed. Such an approach supports to save the tester’s time and effort while executing tests. To meet the desired goals and results, QA engineers have to record properly test cases and their outcomes.
The big bang testing advantages
- The entire system is tested as a ‘one whole system’
- It requires minor planning
- It consists of completed and checked modules.
- There is no demand for urgent build fixings
- Suitable for small systems.
Big Bang Testing Drawbacks
- It is hard to separate modules when the bug is detected
- It is ineffective for large systems.
- It is high risk to miss some crucial issues while testing the whole system.
- Failures occur more frequently because of the simultaneous check of numerous modules.
- A single mistake can influence the results of the whole integration testing.
This Big bang approach is generally executed by those developers who follow the ‘Run it’ and ‘see approach’. Because of integrating everything at one time if any failures occurs then it become very difficult for programmers to understand the basis explanation for that failure. In case any bug arises then developers have to detach the integrated modules so as to seek out the particular cause of bug.
Below is image of Big Bang integration testing
Suppose a system consists of 4 modules as displayed within the diagram above. In big bang explosion integration, all four modules ‘Module A, Module B, Module C and Module D’ which are integrated simultaneously and then the testing is performed. Hence in this approach no individual integration testing is performed because of which the chances of failures increases.
The difference between System Testing and Big Bang approach testing are:
- In System Testing, we basically test the whole system. Whether the modules in system are tested by integrating several at once important. Here testing is done towards the system as a whole.
Big bang approach integration testing and system testing are basically same as they both test the system as a whole.
The big bang approach method of integration testing that always presupposes simultaneous checking of all the system components. Here the most benefit is that a tester can inspect the work of the entire system and its components. If there are many modules and the system is multilevel and complex it is better not to apply the big bang integration testing. Here the checking process is ineffective. The software specialist should analyse all the system peculiarities, task completion dates and plan the testing process with proper techniques and methodologies. Sometimes the developers use the big bang approach to integrate small systems. For large system, this approach is not recommended for the reasons. In any system, with a large number of modules, there are many interface defects. It is difficult to determine whether or not the cause of failure is due to interface errors in a large and complex system.
In large system, the presence of huge number of interface errors isn’t an unlikely scenario in software development. Thus it’s cost effective to be optimistic by putting the modules together and hoping it will work.