Test-Driven Development and Refactoring Course

Practice short TDD cycles, design maintainable unit tests, isolate dependencies, and refactor new or legacy code with executable feedback.
Test-Driven Development and Refactoring Course

At a glance

Duration
1 Week
Format
Classroom
Cities
London, Prague, Zanzibar, Paris, Milan, Marbella and more
Next session
9 – 13 November 2026, London
Average fee
5,750 €

Overview

Test-Driven Development and Refactoring Training Course is a one-week intermediate course for software developers, test engineers, technical leads, and agile delivery teams who leave with a TDD Practice Portfolio. Participants use Red-Green-Refactor cycles, unit test design, test doubles, test seams, legacy-code characterization, continuous integration, and team working agreements to guide software design through executable feedback. Agile Leaders Training Center delivers this course in test-driven development and refactoring practice.

Who Should Attend

  • Software development teams responsible for implementing maintainable application behavior
  • Test engineering teams responsible for fast unit-level feedback and regression protection
  • Technical leadership teams responsible for coding practices and design quality
  • Agile delivery teams responsible for integrating development and verification
  • Application maintenance teams responsible for changing legacy code safely

The course assumes participants can write, run, and debug object-oriented code and leaves out programming-language fundamentals, general Scrum, broad testing theory, and tool-only test automation.

Departments and Industries

The course supports departments that develop and maintain software in technology, financial, healthcare, industrial, and public-service environments.

  • Software engineering and application development
  • Quality engineering and developer enablement
  • Technology architecture and platform teams
  • Financial technology and digital services
  • Healthcare systems and industrial software

Learning Objectives

By the end of this course, participants will be able to:

  • Apply the Red-Green-Refactor cycle to small behaviors.
  • Build readable unit tests and test lists.
  • Compare state and behavior verification choices.
  • Use test seams, stubs, fakes, and mocks.
  • Refactor new and legacy code under tests.
  • Evaluate TDD workflow and continuous-integration feedback.

Course Agenda

Day 1: Establish the TDD Cycle

  • Red-Green-Refactor Cycle Map
  • Behavior Example and Test List Template
  • Arrange-Act-Assert Unit Test Structure
  • Small-Step Implementation Decision Log
  • Test Failure Diagnostic Checklist

Day 2: Design Reliable Unit Tests

  • Test Naming and Intent Specification Pattern
  • Boundary and Equivalence Example Matrix
  • Test Fixture and Data Builder Method
  • Test Smell Detection Checklist
  • Unit Test Readability Review Grid

Day 3: Isolate Dependencies and Collaborators

  • Test Seam Identification Canvas
  • Dummy, Fake, Stub, Spy, and Mock Selection Matrix
  • State versus Behavior Verification Decision Guide
  • Dependency Injection and Isolation Pattern
  • Test Coupling and Brittleness Review

Day 4: Refactor and Integrate TDD

  • Characterization Test Plan for Legacy Code
  • Code Smell and Refactoring Opportunity Map
  • Behavior-Preserving Refactoring Sequence
  • Continuous Integration Test Feedback Pipeline
  • Team TDD Working Agreement and Review Cadence

Day 5: Practice TDD Decisions

  • Suggested Exercise: Build a Test List from a Behavior Example
  • Suggested Exercise: Complete a Red-Green-Refactor Cycle
  • Suggested Exercise: Select and Configure Test Doubles
  • Suggested Exercise: Characterize and Refactor Legacy Code
  • Capstone Exercise: Complete a TDD Practice Portfolio

Practical Exercises

The course uses suggested activities with fictional service, payment, scheduling, and device-control code examples.

  • Suggested activity: convert payment rules into a sequenced unit test list.
  • Suggested activity: isolate a healthcare scheduling dependency with a suitable test double.
  • Suggested activity: characterize industrial device-control code before refactoring.
  • Suggested activity: diagnose a brittle test suite and revise the team agreement.

FAQs

Who suits test-driven development training, and what does it assume?

Test-driven development training suits developers, test engineers, technical leads, and agile delivery teams. It assumes participants can write, run, and debug object-oriented code in their working language.

How does test-driven development differ from general software testing training?

Test-driven development uses tests to guide incremental software design before production code is written, while general software testing training covers broader verification levels, techniques, and quality activities after or alongside implementation.

What is the Red-Green-Refactor cycle in TDD?

Red-Green-Refactor starts with a small failing test, adds the minimum code needed to pass, and then improves code and test structure while preserving behavior. The cycle repeats for the next behavior.

When should TDD use mocks, stubs, or fakes?

TDD uses test doubles when a dependency makes a unit test slow, nondeterministic, hard to control, or difficult to observe. Teams select stubs, fakes, spies, or mocks according to the feedback and verification needed.

How can TDD be introduced into legacy code?

TDD enters legacy code through characterization tests, identified test seams, and small behavior-preserving changes. Teams first capture current behavior, isolate dependencies, and then add new behavior through short test-driven cycles.

Conclusion

Participants take back a TDD Practice Portfolio. It combines test lists, unit tests, failure diagnostics, test-double choices, characterization tests, refactoring sequences, pipeline feedback, and a team working agreement. The portfolio helps teams turn software behavior into executable design feedback and safer code changes.

credits: 5 credit per day

Course Mode: full-time

Provider: Agile Leaders Training Center

Showing 21-40 of 76 events
Image Location Dates Duration Mode Price Actions
Kuala Lumpur Kuala Lumpur Week 07, 2027
15 – 19 February 2027
1 Week Onsite €5,200
Athens Athens Week 07, 2027
15 – 19 February 2027
1 Week Onsite €6,700
Abu Dhabi Abu Dhabi Week 08, 2027
22 – 26 February 2027
1 Week Onsite €4,700
Toronto Toronto Week 08, 2027
28 February – 4 March 2027
1 Week Onsite €12,000
Muscat Muscat Week 09, 2027
7 – 11 March 2027
1 Week Onsite €5,700
London London Week 10, 2027
8 – 12 March 2027
1 Week Onsite €5,700
Amsterdam Amsterdam Week 11, 2027
15 – 19 March 2027
1 Week Onsite €5,700
Madrid Madrid Week 12, 2027
22 – 26 March 2027
1 Week Onsite €5,700
San Diego San Diego Week 13, 2027
29 March – 2 April 2027
1 Week Onsite €14,000
Dubai Dubai Week 14, 2027
5 – 9 April 2027
1 Week Onsite €4,500
Addis Ababa Addis Ababa Week 14, 2027
5 – 9 April 2027
1 Week Onsite €4,500
Istanbul Istanbul Week 15, 2027
12 – 16 April 2027
1 Week Onsite €4,500
Vienna Vienna Week 15, 2027
12 – 16 April 2027
1 Week Onsite €5,700
Milan Milan Week 16, 2027
19 – 23 April 2027
1 Week Onsite €5,700
Langkawi Langkawi Week 16, 2027
25 – 29 April 2027
1 Week Onsite €6,000
London London Week 18, 2027
3 – 7 May 2027
1 Week Onsite €5,700
Abu Dhabi Abu Dhabi Week 18, 2027
3 – 7 May 2027
1 Week Onsite €4,700
Nice Nice Week 19, 2027
10 – 14 May 2027
1 Week Onsite €5,700
Kuala Lumpur Kuala Lumpur Week 20, 2027
17 – 21 May 2027
1 Week Onsite €5,200
Tokyo Tokyo Week 20, 2027
17 – 21 May 2027
1 Week Onsite €10,000

Frequently asked questions

What does this course cover?

OverviewTest-Driven Development and Refactoring Training Course is a one-week intermediate course for software developers, test engineers, technical leads, and agile delivery teams who leave with a TDD Practice Portfolio. Participants use Red-Green-Refactor cycles, unit test design, test doubles, test seams, legacy-code characterization, continuous integr…

Are training dates available?

Yes. Available dates and destinations are listed in the course dates section on this page.

How can I register?

Choose an available date on this page and complete the registration form, or send a programme enquiry.

Can I download the course brochure?

Yes. Use the brochure download link provided on this page.

This course by city