Test-Driven Development with Java: Create higher-quality software by writing tests first with SOLID and hexagonal architecture
by Alan Mellor(Author)
Publisher finelybook 出版社: Packt Publishing (January 13, 2023)
Language 语言: English
Print Length 页数: 348 pages
ISBN-10: 180323623X
ISBN-13: 9781803236230
Book Description
Drive development with automated tests and gain the confidence you need to write high-quality software
Key Features
Get up and running with common design patterns and TDD best practices
Learn to apply the rhythms of TDD – arrange, act, assert and red, green, refactor
Understand the challenges of implementing TDD in the Java ecosystem and build a plan
Book Description
Test-driven development enables developers to craft well-designed code and prevent defects. It’s a simple yet powerful tool that helps you focus on your code design, while automatically checking that your code works correctly. Mastering TDD will enable you to effectively utilize design patterns and become a proficient software architect.
The book begins by explaining the basics of good code and bad code, bursting common myths, and why Test-driven development is crucial. You’ll then gradually move toward building a sample application using TDD, where you’ll apply the two key rhythms — red, green, refactor and arrange, act, assert. Next, you’ll learn how to bring external systems such as databases under control by using dependency inversion and test doubles. As you advance, you’ll delve into advanced design techniques such as SOLID patterns, refactoring, and hexagonal architecture. You’ll also balance your use of fast, repeatable unit tests against integration tests using the test pyramid as a guide. The concluding chapters will show you how to implement TDD in real-world use cases and scenarios and develop a modern REST microservice backed by a Postgres database in Java 17.
By the end of this book, you’ll be thinking differently about how you design code for simplicity and how correctness can be baked in as you go.
What you will learn
Discover how to write effective test cases in Java
Explore how TDD can be incorporated into crafting software
Find out how to write reusable and robust code in Java
Uncover common myths about TDD and understand its effectiveness
Understand the accurate rhythm of implementing TDD
Get to grips with the process of refactoring and see how it affects the TDD process
Who this book is for
This book is for expert Java developers and software architects crafting high-quality software in Java. Test-Driven Development with Java can be picked up by anyone with a strong working experience in Java who is planning to use Test-driven development for their upcoming projects.
Table of Contents
Building the Case for TDD
Using TDD to Create Good Code
Dispelling Common Myths about TDD
Building a typical application using TDD
Writing our First Test
Following the Rhythms of TDD
Driving Design: TDD and SOLID
Test Doubles: Stubs and Mocks
Hexagonal Architecture: Decoupling external systems
FIRST Tests and the Test Pyramid
Exploring TDD with Quality Assurance
Test First, Test Later, Test Never
Driving the domain layer
Driving the database layer
Driving the Web Layer