Make writing tests more joyful
Testing is still a topic that most developers would like to avoid. Even though it is crucial for working software, developing and maintaining tests takes certain time and effort — especially for distributed applications or when changes in existing functionality forces test scenarios to adapt. Omitting software tests can't be the solution; therefore, how can we tackle enterprise tests in an effective and productive way?
This session shows what is necessary to effectively test Java Enterprise microservices in an automated way. We'll see which approaches worked well in real-world projects, how to keep fast feedback and constant velocity in our development circle, how to manage complex test scenarios that involve multiple services, and how to verify our API contracts. It's crucial for the development productivity to keep an immediate feedback loop, not only for unit but also integrative tests. We'll see how container orchestration and service meshes support our tests in regard to distributed applications.
One of the key aspects will be how to write maintainable test code with high quality that embraces principles of software craftsmanship. All of the time will be spent live-coding typical test cases with different scopes using different technologies. While I'll be focusing on Jakarta EE, the concepts and approaches hold true for all enterprise Java projects.
- Demo project: Master branch, Heisenbug 2019, JUG.ru Питер 2019
- Presentation slides: Master branch, Heisenbug 2019, JUG.ru Питер 2019
Thanks for attending my session! I love to share knowledge and to continuously improve. Therefore, I really appreciate your constructive feedback. Thanks for taking the time :-)