Practical TDD training for Java developers.


Book now

Introduction

In this practical 2-day workshop you will learn how to test and design real-world Java applications using Test-Driven Development (TDD). Throughout the course, you'll be developing a Java software system using Test-Driven Development and the modern Java testing tools. Guided by an expert mentor, you'll learn how to overcome challenges that developers face when applying TDD in "the real world" environment.

Coverage

  • How to perform unit testing, mocking, and stubbing with JUnit 5 and Mockito
  • How to write good unit tests using F.I.R.S.T. principles
  • How to test time, data, singletons, statics etc.
  • How to test behavior-less classes, getters, setters & co.
  • How to test integrations with the filesystem, databases, smtp servers, queues
  • How to test external web services and gRPC integration with test doubles
  • How to write good acceptance tests (ATs) and how to find balance with unit tests (and UI tests, if they exist)
  • How to create fast, isolated, and repeatable, acceptance testing environments with Docker and Testcontainers
  • How to test asynchronous code, systems, and Web APIs
  • How to test database migrations
  • How to get started with Test-Driven Development (TDD) and why "test-first" beats "test-last" approach
  • How to design object relationships with CRC cards
  • How to design systems with Acceptance Test-Driven Development (ATDD) and BDD
  • How to use TDD and ATDD in legacy systems to make fearless and non-breaking code changes
  • How to integrate TDD and ATDD into QA process, and how to organize effective ATDD/BDD process

 

You will also learn why customers don’t like writing BDD specifications, why developers and test engineers usually have two separate test suites (and what to do about it), when Test-Driven Development should be avoided, how to “sell” TDD to your team, and much more!

The course is highly recommended for teams that work together.

Audience

Java developers who are familiar with basic unit and integration testing, but are not yet comforable with Test-Driven Development.

Certification

Yes, you'll earn a certificate of accomplishment.

Language

The course is taught in English.

Trainer

Eduards Sizovs

Eduards Sizovs is a distinguished software architect and software development trainer who helps awesome teams around the globe excel at software architecture, engineering practices and soft skills. Eduards is an Oracle Certified Master and Java Enterprise Architect (OCMEA), Certified Scrum Master, Certified Product Owner, Certified Project Management Professional (PMP), and an ICF certified coach. Eduards holds two degrees in Computer Science (programming and software architecture) and international MBA degree (IT process organization, leadership, management). Eduards is an author of upcoming Java Architecture and Software Mentoring books.

Eduards leads DevTernity – the top tech conference in Europe, and is the founder of a tech startup DevTube (#1 Hackernews, #3 ProductHunt).

He is an award-winning international speaker, who had spoken at the largest software conferences.


For years I've been working extremely hard to distill neverending amount of information, hype, patterns, practices, and case studies. I tried them all in a real-world environment. Today, my goal is to pass the most valuable lessons to you in a practical, entertaining, and simple way.
Eduards' Signature

Limited offer. Grab your ticket today.

 

Private training for your team(s)

in your office or remotely

?