HOME

TheInfoList



OR:

Integration testing (sometimes called integration and testing, abbreviated I&T) is the phase in
software testing Software testing is the act of examining the artifacts and the behavior of the software under test by validation and verification. Software testing can also provide an objective, independent view of the software to allow the business to apprecia ...
in which individual software modules are combined and tested as a group. Integration testing is conducted to evaluate the
compliance Compliance can mean: Healthcare * Compliance (medicine), a patient's (or doctor's) adherence to a recommended course of treatment * Compliance (physiology), the tendency of a hollow organ to resist recoil toward its original dimensions (this is a ...
of a system or component with specified
functional requirement In software engineering and systems engineering, a functional requirement defines a function of a system or its component, where a function is described as a specification of behavior between inputs and outputs. Functional requirements may involve ...
s. It occurs after unit testing and before system testing. Integration testing takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an integration test plan to those aggregates, and delivers as its output the integrated system ready for system testing.


Approach

Some different types of integration testing are big-bang, mixed (sandwich), risky-hardest, top-down, and bottom-up. Other Integration PatternsBinder, Robert V.: ''Testing Object-Oriented Systems: Models, Patterns, and Tools''. Addison Wesley 1999. are: collaboration integration, backbone integration, layer integration, client-server integration, distributed services integration and high-frequency integration. In big-bang, most of the developed modules are coupled together to form a complete software system or major part of the system and then used for integration testing. This method is very effective for saving time in the integration testing process. However, if the test cases and their results are not recorded properly, the entire integration process will be more complicated and may prevent the testing team from achieving the goal of integration testing. The lowest level components are tested first in bottom-up testing. They are then used to facilitate the testing of higher level components. The process is repeated until the component at the top of the hierarchy is tested. All the bottom or low-level modules, procedures or functions are integrated and then tested. After the integration testing of lower level integrated modules, the next level of modules will be formed and can be used for integration testing. This approach is helpful only when all or most of the modules of the same development level are ready. This method also helps to determine the levels of software developed and makes it easier to report testing progress in the form of a percentage. The top integrated modules are tested first in top-down testing and the branch of the module is tested step by step until the end of the related module. Sandwich testing combines top-down testing with bottom up testing. One limitation to this sort of testing is that any conditions not stated in specified integration tests, outside of the confirmation of the execution of design items, will generally not be tested.


See also

* Design predicates * Functional testing * Continuous integration


References

{{DEFAULTSORT:Integration Testing Software testing Hardware testing