Rootconf 2017

On service reliability

Ramya A


"Asynchronous" integration tests for microservices

Submitted Mar 20, 2017

As the name suggests, “micro”-services are services which needs to be started and knit together for the complete functioning of an application. “Integration Hell” - making all the microservices to play well together - is one of the biggest challenges that one faces in the microservices world. This is where “Consumer Driven Contracts” (CDC) comes to the rescue. CDC is a pattern defined by Martin Fowler.CDC Tests are “Asynchronous Integration Tests”. In this talk I will be highlighting how CDC can be implemented usign an opensource tool called Pact .We can now forget about bringing up all the microservices to test the integration between different microservices.This makes integration tests as simple as unit tests. This is a must-have test for all microservices.


Intended Audience:

  1. Developers, Tech Architects, SDETs, Testers (who work on microservices)


  1. Microservices’ Integration Hell
  2. Testing Microservices - need for a new testing approach
  3. Traditional Ways of Integration Tests - why it would not work great for microservices?
  4. What are “Consumer Driven Contracts” and how it works?
  5. How CDC can be implemented using “Pact”?

The key take aways from this session would be:

  1. A simpler way to implement integration tests for microservices.

Speaker bio

Ramya is passionate about building/designing test frameworks.She loves to build robust automations which would enable safe and quick delivery of code to customers! “Simple, but powerful” is her slogan for building frameworks/tools. She has around 9 years of experience and is currently enjoying her role as a Senior SDET in Freshdesk.She resides in Chennai with her 2 year old angel and her husband and parents. On a personal front, she enjoys travelling and hanging out with family and friends. Sheryl Sandberg had been her all-time inspiration!



{{ gettext('Login to leave a comment') }}

{{ gettext('Post a comment…') }}
{{ gettext('New comment') }}
{{ formTitle }}

{{ errorMsg }}

{{ gettext('No comments posted yet') }}

Hosted by

We care about site reliability, cloud costs, security and data privacy