Training

Test-driven Spring Boot applications

Spring Boot is becoming an increasingly popular framework and platform for developing modern Java applications. It brings together many useful technologies and approaches out of the box and makes a developer’s life much easier. At the same time, a great deal happens implicitly and somehow just works by default. Some developers have dug deeper, figured it out, and know how everything works under the hood, while others simply go with the flow. The TDD approach helps you avoid many surprises during development and specify the behavior of the various parts of an application before they are even implemented.

Spring Boot offers plenty of capabilities and ready-made tools for working in a TDD style. The training covers approaches and techniques for testing the different layers of a classic Spring Boot application or service, the libraries and frameworks available to make that testing easier, and the principles behind this development approach and how they apply specifically to Spring Boot.

And, of course, there will be plenty of practice. During the training, participants will be able to try out for themselves every approach we present and build a small but complete application with TDD and Spring Boot.

Target audience
Java developers, tech leads
Price
$300per participant
Date and time
16 hours / 4 days of 4 hours each
  • Group registrations get a discount

Book for your company

Detailed program

  • Introduction, getting to know the participants, and gathering expectations
  • Overview of the TDD approach and the reasons to use it
  • A quick overview of Spring Boot using a single application as an example
  • Examples of implicit out-of-the-box behavior
  • Introduction to unit testing
  • Using mock objects to isolate dependencies
  • Testing techniques for the controller layer
    • Classic unit tests
    • Testing a single controller in isolation
    • Integration testing
    • System testing that starts the entire application
    • Hands-on exercises
    • Building a sound test pyramid
  • Testing techniques at the business logic level
    • Using Mockito
    • Loading a partial Spring context
    • Hands-on exercises
  • Testing techniques at the data access level
    • DBUnit and how it works
    • Ways to load data
    • Disabling checks at the database level
    • Using an in-memory database
    • Migrations with Flyway or Liquibase
    • Hands-on exercises
  • A complete example of developing a REST endpoint with TDD
  • Hands-on exercise
  • Wrap-up and Q&A

Past runs

  • November 24-25, 2017Kyiv, UkraineTraining: Test-driven Spring Boot applications
  • July 14-15, 2017Kyiv, UkraineTraining: Test-driven Spring Boot applications