Lucy Chang, Intuit
Intuit, a leader in small business and accountants software, is a strong AWS (Amazon Web Services) partner and has migrated several services to the AWS platform. We are also implementing a service-oriented architecture to provide better user experiences. With a service-oriented architecture, it is common that the service that one team works on depends on other services, which is referred to as depended-on component (DOC). When the DOC is not ready for integration, we can utilize stubs to simulate the interaction and continue the work. Stubs are canned responses used to replace the real DOC for test-specific purposes. We can create different permutations of test data stubs to increase code coverage. Combining this with the fault injection for resiliency testing helps to ensure the availability and robustness of our services. In addition to stubbing, we also need a proxy to forward the requests to the real DOC for end to end integration testing.
We at the Intuit QuickBooks Online team have researched different options for setting up stubbing and proxies suitable for the unique AWS operating environment. It needs to be easy to learn and easy to adopt. We implemented Wiremock server in AWS for the team and were able to increase our code coverage significantly and do resiliency automation testing which was very difficult to automate before.
This paper describes the following.
- A basic introduction of architecture design in AWS
- The Wiremock tool and why it was chosen
- How to automate setting up Wiremock in AWS
Target Audience: Intermediate