Abstract:
A Microservice is an architectural style of developing an application consists of
independent single-function modules with distinct interfaces and functionalities. These
independent modules are deployed on different servers to increase performance and
reliability, but as a result, testing of this massive system is a challenge. This research aims
to provide a visual contract enabled testing of microservice in line with dataflow-based
testing techniques. Where visual contracts consist of pre- and post-condition of an
interface. We use two case studies to achieve our objectives. First case study is a
combination of fairly large microservices “Uber”. We focused on ride booking related
modules. Our second case study is “A+ Kids”, about a student monitoring system. We
applied same approach on both case studies to analyze the results. We made visual
contracts using AGG and set rules for each operation to perform critical pair analysis.
This helped us to design test cases with focus on most important pairs of operations in
operation sequence. This result in reduce effort, time, and cost in creating and executing
test cases, and improves choreography.