[Contract Driven Development – Post 2] Integration Hell
January 17, 2023
Read time: 2 minutes

Article Overview
In my article “Microservices Integration Done Right Using Contract-Driven Development” that was recently published on InfoQ, I explained how the term is often a misnomer. In the context of this article, when we talk about integration testing we are referring to the aspect of verifying the contract compatibility between components.
Integration Tests require the actual components/microservices to be deployed to a common environment. Because of this integration tests are able to verify the connections between these microservices which was never verified until this point since all the constituent microservices of the application were all built in isolation. While tests running in this environment can exercise/verify internal logic of each microservice, that should not be their focus. Nor is it the best use of integration tests. Internal logic can always be verified through tests lower down in the test pyramid. However, this ability to verify connections by virtue of having all constituent components deployed to an environment also is the Achilles heel of integration tests.
Related Articles
May 20, 2025
Read time: 16 mins
Demystifying API Lifecycle: Unpacking Essential Roles, Responsibilities and Their Challenges
March 13, 2023
Read time: 6 mins
Contract-Driven Development – a Real-World Adoption Journey
December 30, 2022
Read time: 3 mins
[Contract Driven Development – Post 1] – The trouble with API mocks and stubs
December 29, 2022
Read time: 10 mins