Embarking on a Java project involves employing the best strategies, patterns, and architectural decisions, all geared towards a customer-centric.
Yet, there exists an often overlooked facet: quality assurance. While not entirely disregarded, we, as developers, sometimes limit ourselves to performing the basic unity and integration tests, which may leave room for bugs.
Fortunately, there are several straightforward approaches and tools that can be implemented to deliver a bug-free project with minimal effort.
During this presentation, you'll gain practical knowledge to the application of the following tools and approaches:
- ArchUnit: Ensuring consistent adherence to architectural patterns, even when multiple developers making changes to the project
- FindBugs: Employing static analysis to proactively identify potential bugs in your code, effortlessly.
- SonarQube: Offering a suite of diverse metrics and enabling the establishment of quality gates to maintain a predetermined standard of quality
- PiTest: Enabling the power of mutation testing to uncover bugs that may otherwise remain concealed.
- TestContainers: Streamlining the process of running various components such as databases, services, and extensions, thereby minimizing the need for manual intervention
Throughout the session, we'll delve into concrete examples, ensuring a hands-on experience