One wise man said once, treat the ‘change’ as ‘chanc(g)e’. Change gives you to chance to make additions to your personality. In the ever-growing software industry, ‘change’ is inevitable. Any change that is being demanded in your professional journey, treat it as a chance to grow yourself. Let’s come, be ready to ride on my visual journey of being an API test engineer, for an application, who has transformed from Monolithic architecture to Microservice architecture.
Monolith to microservices, is not only a change at a technical level but also a change in mindset. I went into a new avatar of Software Development Test engineer. In a typical Software Test Life Cycle, as a QA, first, you go through requirements, second prepare test scenarios/ cases, wait till development and code check-in happens, start testing and publish results. In Microservice’s way of development, there is no separate STLC and SDLC, it is one PDLC — Product Development Life Cycle. Idea is to follow SHIFT-LEFT principle, where the majority of testing is at develop and build stage.
Micro-Services philosophy says, for developing applications to solve complex problems around the world, we don’t need the solution with complex architecture. Keep it simple. Break it down into smaller pieces. We will break our test strategy into four major test phases: Unit Tests, Contract Tests, Service Level Tests, End to end Tests. Each phase has its own significance and owner assigned for it.
Every software has something unique in its testing style. Also, every QA has his/her own unique ability for testing. Ultimately, testing is an art. To attain a certain level of test craftsmanship, an individual should work for considerable time on gaining the domain and technical knowledge of the product to be worked upon.
Choose your test tool wisely. Always remember the test tool family who ‘tests together’ always ‘stays together. Use Springbootest for component testing and spring cloud contract for contract testing. Wire mock comes as a complementary with both. Unit testing can be done with junit5. Junit5 holds your hand till your component test. Test NG and cucumber are best made for each other couple to write your end-to-end tests. Kubernetes handles your QA namespace in a great way. Witness every stage of DEV-OPS.
Like before planning to go on any hiking expedition, we plan a proper routine to work on our fitness, diet. This complete exercise takes us to a different level, where we find ourselves more confident and stronger. Similarly, during this journey, I found myself more evolved and confident as a Software tester. I hope you too have enjoyed my journey from Monolith way to Microservices way.
Mayur Chitnis - Test Solution Architect | SW Test Principal Engineer - Amdocs | LinkedIn
Hard core software QA at heart. Over 15 plus years of experience in the software industry. Initially started my career…