Automated Failure Injection and Testing across Microservices

Duration: 25 mins
Rajat Khare
Software Architect, Intuit

How do you test your failure scenarios explicitly across Service APIs?. How can you take control of writing Automated Integration tests that simulate failure cases and test your resiliency and fallbacks?

As we design and build micro services exposing APIs, it becomes very critical to think of all the failure points that can happen and how they will manifest on the response. Its also important that as we plan automated Integration Testing on the APIs that run in CI/CD pipelines to be able to represent both success and failure test cases. Existing approaches to do so have been hard and usually need the whole environment in a failure more to be able to simulate or mock error cases from downstream dependencies.

In this session, Rajat will introduce AutoFIT, a light-weight framework he co-authored with his colleague Arun Lingala, which helps introduce failures using an expression in request header. The framework when consumed in the Service can intercept the expression and simulate a downstream dependency to return a desired error instead and help the code path enter the failure mode. This gives complete control on simulating a desired error for a request without putting the entire system in a failure mode.

You may also be interested in

50 mins
Uncovering Project Amber - Changes to the Java Language in v10 and Beyond

Evolution has always been in the Java DNA, and according to Darwin, "It is neither the strongest nor the most...

50 mins
Java 9 Memory and GC

So your server is having issues? memory? Connections? Limited response? Is the first solution to bounce the server? Perhaps change...

50 mins
Exploring Collectors: One of the Most Powerful Utility Class in the JDK

One of the most intriguing classes in the JDK is the Collectors utility class, with a collection of some highly...

50 mins
Mutation Testing

Most developers are familiar with the concept of unit testing, and how this is useful to ensure validity of your...

50 mins
Distilling Java Containers for Kubernetes

Three evolutionary ecosystems work well together Java, Containers, and Kubernetes. Past versions of Java were never designed to be “container aware”....

25 mins
Accessible Forms: It's Not as Difficult as You Think

Not sure how to make accessible forms? I will be going over all you need to know to improve the...