Test Techniques Home

Test Techniques Articles

Test Techniques Links

Test Techniques Keywords

Test Techniques

integration testing

What
Testing performed to expose faults in the interfaces and in the interaction between integrated components.
BS 7925-1.British Computer Society Specialist Interest Group in Software Testing (BCS SIGIST)

The above definition only refers to "integrated components." This is known as "integrtion testing in the small". Thus checking that widget A, when integrated with widget B generates a bleep, after a given input, constitutes integration testing.

"Integration testing in the large" refers to the whole systems being joined. For example checking that a Payroll system interacts as required with the Human Resources system.

The two extremes shown here mean that integrated testing can appear virtually anywhere along the V Model.

v model showing
integration scale.

Integration testing connects with many other designs and techniques. Including Black Box Testing, Alpha and Beta Testing.

Why?
I see three main reasons to conduct Integrated testing.

1) To find faults that could not have been found in the component testing because, they only become apparent when components are integrated. (Rather they should only be found at integration.)

2) To generate credible information about the software under test, so that technical and business decisions can be made.

3) Confirm that as the system grows risk of failure is being diminished.

Who?
As integration testing covers such a broad length of the V model, it is not surprising that a large range of people should be conducting it. From the developer who joins 2 widgets together to make a tiny subsystem, to the systems integrator who has to join the systems up on the customer site.

Where?
Almost all integration will take place at the developing organisations site.

When?
Once the components or sub-systems, to be integrated have themselves been fully component tested. If any are not ready to be integrated, this is not necessarily a problem as their functionality can be simulated.

How?
Integration testing can either be conducted incrementally (see for more detail or non-incrementally.

The non-incremental approach is also non as "big-bang" testing. This approach is very unfashionable due to the level of risk that one takes in hoping that the system will perform as expected.

Incrementally, testing can be split into top-down testing and bottom-up testing. Middle-out is another variation.

In top-down testing, higher level modules are tested. If lower modules required to make up the system are not yet available then, stubs are used to simulate their activity.

Conversely Bottom up testing, tests the lower levels first. If the higher level modules required to make up the system are not yet available then, drivers are used to simulate their activity.

Testing that can be undertaken on the now integrated system are both functional and non-functional.

Google
Web www.riskmanagement.force9.co.uk

Test Techniques Bestsellers
The bestselling books on Amazon.

Articles

integration testing

Load Testing

portability testing

security testing

Business Analysis

Other Related Websites
Automated Testing

Visit our site of the month Load Testing at loadtesting.force9.co.uk