> Markdown version of [/videos/1598-test-driven-development-it-s-easier-than-you-think?t=1330](https://www.wearedevelopers.com/videos/1598-test-driven-development-it-s-easier-than-you-think?t=1330). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Test-Driven Development: It's easier than you think! Think TDD is a rigid chore? Discover how combining Java 21, Quarkus, and AI lets you build fully test-covered microservices in a fraction of the time. - **Speakers:** [Eric Deandrea](https://www.wearedevelopers.com/@eric-deandrea) - **Event:** World Congress 2025 - **Published:** August 20, 2025 - **Duration:** 25:36 - **URL:** https://www.wearedevelopers.com/videos/1598-test-driven-development-it-s-easier-than-you-think ## Summary Modern software development demands high confidence that production-bound code actually performs as expected, yet many developers view test-driven development (TDD) as a rigid, overly theoretical chore. Bridging the gap between strict TDD purists and practical reality reveals that continuous testing is faster and more accessible than commonly perceived. By adopting pragmatic TDD alongside modern developer tooling, teams can rapidly iterate on feature development without sacrificing code reliability or relying solely on end-users to find bugs in production.\n\nBuilding a robust RESTful architecture—such as a pet adoption API backed by a PostgreSQL database—effectively demonstrates how seamless this workflow can be. Harnessing Java 21, Quarkus Dev Mode, and Jakarta RS allows engineers to experience hot-reloading and continuous isolated test execution without manual restarts or complex database provisioning. A critical insight into modern workflows is the strategic use of AI: while artificial intelligence is excellent for generating repetitive boilerplate or implementing business logic that satisfies preexisting tests, the tests themselves must remain human-authored sources of truth to ensure absolute validation.\n\nThis pragmatic approach eliminates friction through tools like Hibernate with Panache for boilerplate-free data repositories, AssertJ for highly readable assertions, Mockito for targeted isolation, and Rest Assured for validating API contracts. Integrating Java 21 virtual threads via simple annotations further enhances concurrency without complicating test suites. Ultimately, pairing continuous testing interfaces with intelligent IDE integrations creates a fast-feedback loop, enabling developers to build fully functional, 100% test-covered microservices in a fraction of standard development time. **Keywords:** pragmatic TDD workflows, java 21 virtual threads, quarkus dev mode continuous testing, hibernate ORM panache, REST API validation with rest assured, assertj fluent assertions, mockito dependency isolation, AI-assisted backend implementation, jakarta RS endpoints, postgres testcontainers integration, human-authored test suites, RESTful microservice architecture, live coding java testing loops ## Chapters 1. **Adopting a pragmatic approach to test-driven development** (00:05) — Finding the middle ground between TDD purists and reality to improve deployment confidence. 1. **Introducing the sample pet adoption application** (01:45) — Designing the architecture of a RESTful application utilizing Postgres and Apache Kafka. 1. **Scaffolding a Quarkus application with dependencies** (03:26) — Selecting required dependency layers including REST Jackson, Hibernate ORM, and database connectors. 1. **Running Quarkus dev mode and automatic database provisioning** (04:47) — Starting a live development environment that automatically provisions a Postgres container utilizing Dev Services. 1. **Generating JPA entities and test dependencies using AI** (06:01) — Configuring test frameworks alongside using an AI assistant to generate a custom JPA entity. 1. **Setting up test transactions for the persistence layer** (09:08) — Creating the Panache repository and applying test transactions to rollback database state between executions. 1. **Implementing the Panache repository and executing queries** (11:24) — Writing assertions for data retrieval and utilizing Panache shorthand syntax for database operations. 1. **Mocking repository endpoints with Mockito and REST Assured** (14:15) — Building REST layer tests by stubbing repository responses and validating payloads with Hamcrest. 1. **Generating the Jakarta REST resource using AI prompts** (20:01) — Instructing the AI assistant to implement the REST endpoint while applying specific coding conventions. 1. **Enabling virtual threads and exploring the Quarkus Dev UI** (22:10) — Upgrading endpoints to utilize Java 21 virtual threads and inspecting the database through the integrated developer interface. 1. **Reviewing the finished application and additional resources** (24:47) — Wrapping up the live coding session and introducing the Quarkus Superheroes sample project for further exploration. ## Related Moments - [Introduction to developer joy and the Quarkus ecosystem](https://www.wearedevelopers.com/videos/1591-developer-joy-with-quarkus) (from "Developer Joy with Quarkus") - [Running the modernized Quarkus application with test containers](https://www.wearedevelopers.com/videos/959-supercharging-static-code-analysis-konveyor-ai-llms) (from "Supercharging Static Code Analysis: Konveyor AI & LLMs") - [Audience Q&A on CDK implementation and automated testing](https://www.wearedevelopers.com/videos/740-the-power-of-cloud-development-kit-cdk-how-to-get-the-most-out-of-it) (from "The power of Cloud Development Kit (CDK): How to get the most out of it") - [Adopting test-driven design as a strategic development methodology](https://www.wearedevelopers.com/videos/446-treat-yourself-a-tale-about-dog-training-and-test-driven-development) (from "Treat yourself - A tale about dog training and test-driven development") - [Bootstrapping a Quarkus AI project with MCP integrations](https://www.wearedevelopers.com/videos/1604-supercharge-agentic-ai-apps-a-devex-driven-approach-to-cloud-native-scaffolding) (from "Supercharge Agentic AI Apps: A DevEx-Driven Approach to Cloud-Native Scaffolding") - [Addressing questions on development practices and testing strategies](https://www.wearedevelopers.com/videos/1069-100-times-more-frequent-deployments-how-did-we-create-a-high-performance-team) (from "100 times more frequent deployments: How did we create a high performance team?") ## Related Articles - [Dev Digest 132 - Binging WADFlix?](https://www.wearedevelopers.com/magazine/473-dev-digest-132-binging-wadflix) - [Exploring AI: Opportunities and Risks for Developers](https://www.wearedevelopers.com/magazine/522-exploring-ai-opportunities-and-risks-for-developers) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline) - [Dev Digest 120 - Apple and peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers) ## Related Jobs - [QA Automation Engineer](https://www.wearedevelopers.com/jobs/ext/1414297-qa-automation-engineer) at **Bitpanda** - [SENIOR SOFTWARE-ENTWICKLER:IN (W/M/D)](https://www.wearedevelopers.com/jobs/48210-senior-software-entwickler-in-w-m-d) at **Pradtke GmbH** - [Senior Data Engineer](https://www.wearedevelopers.com/jobs/ext/1589390-senior-data-engineer) at **Douglas GmbH** - [Principal Software Engineer](https://www.wearedevelopers.com/jobs/ext/149130-principal-software-engineer) at **Twilio** - [Qa Engineer (Mobile & Web), Broker](https://www.wearedevelopers.com/jobs/ext/1987685-qa-engineer-mobile-web-broker) at **Bitpanda** - [Senior Backend Engineer (Java)](https://www.wearedevelopers.com/jobs/ext/19369-senior-backend-engineer-java) at **Bonial International GmbH**