- Views: 1
- Report Article
- Articles
- Business & Careers
- Business Services
Integration Testing: Ousting Term Confusion
Posted: Nov 14, 2020
Imagine you bought a beautiful house, but upon moving in you find out it is not acceptable for living. The walls are coated with thin and barely visible cracks, even raindrops drip through the freshly painted ceiling, and now you may not even make a cup of tea to warm yourself because of the energy line misconnection. This is exactly what occurs as soon as the components of a home aren't integrated properly.
Computer software products are in a way similar to buildings. They contain building blocks (modules) which should be seamlessly interconnected, and the entire system ought to be integrated with other approaches to allow the product to execute its functions. Quality integration testing examples illustrate the overriding value of this kind of testing. Still, the pros' views on the definition of integration testing occasionally differ. Let us have a closer look and discover out the reality.
What's Integration Testing? The 2 Ws
What's Why? 2 main definitions of integration testing answer these questions otherwise.
The favorite definition puts it fairly simply. It talks about integration testing for"different software modules that are combined and tested as a group." But is this product workable? You never know till you determine how it works in real life at which it's to interact with a number of external systems. The interaction with outer systems should also be analyzed.
The following definition, a comprehensive one, is offered by ISTQB. It divides integration testing efforts to two kinds according to their scope. These types are:
Part integration testing that assesses interconnections between various components of a machine.
System integration testing that verifies seamless interconnection between different independent systems, including hardware and applications.
As we could see, the two definitions are not diametrically opposed. The thorough definition includes the favorite one, specifically mentioning components.
However, software performance isn't always guaranteed by smooth interconnection between elements. Software needs to be calibrated and develop together as a item someone would prefer to use. Then that merchandise will also should perform well with the outside world: be it a closed company portal or a multiplayer sport available to anyone, it simply works successfully when integrated with other systems. After all, the ISTQB definition offers an entire image of integration testing attempts, so we'll adhere to it further on.
The why and what coated, we've yet another important question to answer: how to perform integration testing effectively?
Integration Testing: How-Tos
As the 2 kinds of integration testing are different, they require different testing approaches. Let's consider them.
Role Integration Testing
There are three main methods used in part integration testing
Bottom-up Strategy. Testing teams first test the lowest level of the machine. Once the level modules are analyzed and combined, the team proceeds to another level modules. After all levels are integrated, the testing team tests the whole system. This strategy works when a lot of the modules of the same development level are prepared.
This strategy enables detecting and fixing a significant error, if any, at the bottom unit of the program. But while the primary program appears just when the last module is incorporated and analyzed, the greater level design defects can be discovered only at the end.
Top-down approach. Testing teams test the topmost module; then the modules of lower degrees are incorporated and analyzed one by one. Stubs (code fragments) substitute the modules that are not yet match for integration. When all the modules are incorporated, the group tests the entire system. This technique concentrates on interconnections between the modules.
This approach enables a very consistent solution, and writing stubs requires less time. Nonetheless, in this case, basic functionality is tested at the close of the cycle.
Big bang strategy. Developers few the majority of the machine, and QA engineers test it.
This method is controversial. On the 1 hand, boxers have a whole system and its elements to test at their disposal, no gaps included. On the other hand, testing may detect many crucial bugs, including those hampering the development environment. As development is finished before integration testing starts, it is difficult to trace the reason for failures.
The simplest and yet efficient approach to conduct system integration testing (SIT) is info strategy, which assesses the information is left from the dataflow from system to system. Applying this method, analyzing engineers scrutinize data over three levels:
- Integration degree (a Internet service or middleware)
- Database level
- Application degree
Data must remain unchanged throughout the transition procedure. Besides, the procedures involving several systems should operate easily, data changes should be revealed in all the procedures involved and the two systems should detect erroneous information when it's sent. Besides, performing SIT, analyzing engineers rely upon product specifications and various technical documents describing labour procedures of another system or systems. Ensuring efficient communication with specialists working on the other system is the very best strategy in this case.
Wrapping It Up
Computer software products, especially complicated ones, may never be jointless. They generally include several layers of modules that should be seamlessly incorporated with one another. Software integration evaluation verifies the standard of these interconnections.
Program testing engineers have different methods to integration testing. The very popular one discusses integration of modules within a method and assorted techniques to implement it. But, it states nothing about system integration, and it is a prerequisite for successful product work in real life.
ISTQB provides another definition of what's integration testing. Discussing component and system integration testing, this technique recognizes the two-fold nature of this sort of testing and stresses the significance of data integrity during transitions from system to system. This definition is much more comprehensive, and we stick with it within our testing practice.
About the Author
I am a technical content writer at testingxperts, interested in writing articles on the latest IT related topics.
Rate this Article
Leave a Comment