Nadat de inlogmodule en de ordermodule van een applicatie afzonderlijk zijn getest, controleert integratietesten hun onderlinge werking: een gebruiker logt in en plaatst een order, en de ordermodule ontvangt correct de identiteit van de geauthenticeerde gebruiker. Testdata en verwachte resultaten bestrijken de interfaces — API-contracten, databaseverbindingen en gedeelde gegevensformaten. Het doel is defecten bloot te leggen in de interfaces en in de interacties tussen geïntegreerde componenten of systemen.
Wat is het verschil tussen integratietesten en systeemtesten? Integratietesten richten zich op interfaces en interacties tussen geïntegreerde componenten of systemen. Systeemtesten testen het complete, volledig geïntegreerde systeem tegen de eisen. Eerst komt de integratie; systeemtesten volgen zodra alles is geïntegreerd.
Wat is een top-down- of bottom-upaanpak? Dit zijn integratiestrategieën. Top-down begint met de modules op het hoogste niveau en gebruikt stubs voor lagere modules; bottom-up begint met lagere modules en gebruikt drivers. Beide hebben tot doel interface-defecten geleidelijk bloot te leggen.
Hebben integratietests echte interfaces nodig? Idealiter wel, maar stubs en drivers worden gebruikt wanneer de echte modules nog niet beschikbaar zijn. Het risico is dat defecten die door het substituut worden verborgen, pas tijdens systeemtesten aan het licht komen.
Waarom komen interface-defecten zo vaak voor? Omdat componenten vaak parallel worden ontwikkeld en aannames over gegevensformaten, foutafhandeling en timing zelden precies worden gedocumenteerd. Integratietesten maken die aannames zichtbaar.