Book Image

Mastering Spring Boot 2.0

By : Dinesh Rajput
Book Image

Mastering Spring Boot 2.0

By: Dinesh Rajput

Overview of this book

Spring is one of the best frameworks on the market for developing web, enterprise, and cloud ready software. Spring Boot simplifies the building of complex software dramatically by reducing the amount of boilerplate code, and by providing production-ready features and a simple deployment model. This book will address the challenges related to power that come with Spring Boot's great configurability and flexibility. You will understand how Spring Boot configuration works under the hood, how to overwrite default configurations, and how to use advanced techniques to prepare Spring Boot applications to work in production. This book will also introduce readers to a relatively new topic in the Spring ecosystem – cloud native patterns, reactive programming, and applications. Get up to speed with microservices with Spring Boot and Spring Cloud. Each chapter aims to solve a specific problem or teach you a useful skillset. By the end of this book, you will be proficient in building and deploying your Spring Boot application.
Table of Contents (23 chapters)
Title Page
Copyright and Credits
Dedication
Packt Upsell
Contributors
Preface
Index

Test-driven development


Test-driven development (TDD) is about writing automated tests that verify whether the code actually works. TDD focuses on development with well-defined requirements in the form of tests. Every development process includes testing either in an automated or manual way. Automated tests result in an overall faster development cycle. Efficient TDD is faster than development without tests. Comprehensive test coverage provides confidence in the application development and this confidence enables refactoring for the application. Refactoring is essential to the agile development of an application. Let's see the following diagram:

Refactoring promotes agile development; it is easy to discover failures and it fixes them.

Testing makes you think about your design. If your code is hard to test, then the design should be reconsidered. A test case helps you focus on what matters. It helps you not to write code that you don't need and it finds problems early during development. Let...