Over a million developers have joined DZone.

CI/CD of Services with Mocking and Resiliency Testing

Learn how Intuit uses dependency mocking with Wiremock to reliably execute test automation in their CI / Continuous Delivery SOA system.

· Cloud Zone

Download this eBook outlining the critical components of success for SaaS companies - and the new rules you need to play by.  Brought to you in partnership with NuoDB.

At re:Invent, Intuit had a really interesting talk on how they are using dependency mocking in an interesting way to pull of Continuous Delivery.  Ever heard of a tool called Wiremock?

Video Description:

"At Intuit, we are migrating many services to AWS. We have developed a tool called Slingshot to automate our entire onboarding process. It sets up our AWS account; generates the Jenkins flow pipeline; and then automatically builds, tests, deploys, and promotes our applications/services in the software development pipeline. The deployment automation provides zero downtime with fast cutover and quick rollbacks.

Additionally, one of the challenges of implementing CI/CD with service-oriented architectures (SOA) is reliable execution of test automation. Because every service evolves on its own schedule, having a single integrated test environment is virtually impossible. One way to handle this complexity is dependency mocking. We use the Wiremock tool, which allows users to stub for service dependencies and do resiliency testing that was hard to automate before."

Learn how moving from a traditional, on-premises delivery model to a cloud-based, software-as-a-service (SaaS) strategy is a high-stakes, bet-the-company game for independent software vendors. Brought to you in partnership with NuoDB.

continuous delivery ,ci ,mocking

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}