When developing complex software, testing plays an important role in ensuring a product works as expected and meets the technical and business requirements that informed its design. For many developers of complex software, automated integration testing is the most efficient and robust method available.
The software testing process is often divided into a number of stages. Initially, individual software modules are tested independently. Integration testing is a phase in the software testing process in which individual units are combined and tested collectively, with a focus on the interfaces between modules.
When testing software, the process of detecting defects manually can be arduous, time-consuming and, in many cases, ineffective. Automated integration testing utilizes specially designed applications to automate the process of conducting tests.
Unlike manual testing, automated integration testing enables development teams to continue working on a product's development as it is being tested. In addition, it offers the ability to run tests repeatedly and quickly, increasing the likelihood that even small defects will be identified early enough to rectify them effectively.
Automated integration testing is widely utilized in the development of particularly complex applications. These include aerospace software, military software, medical software railway software, automotive software and industrial control software.