Test-Driven Development in Java (2-days)

Event Information

Share this event

Date and Time



Online Event

Refund Policy

Refund Policy

Contact the organiser to request a refund.

Eventbrite's fee is nonrefundable.

Event description
2-day live, online, instructor-led training workshop in Test-Driven Development

About this Event

Test-Driven Development is a foundational discipline for Agile software delivery.

On this course, you will learn how to design high-quality working software using tests as specifications, how to keep your code easy to change with refactoring, and how to scale the technique to complex, real-world architectures.

With an emphasis on the practical, this workshop is packed full of hands-on demonstrations (20%) and exercises (80%). Participants learn together with pair and mob programming.

We've trained thousands of developers in TDD over the last decade, and this workshop has been distilled and refined from all that experience.

Day #1

The TDD Cycle

Learn to design and develop in micro-iterations of 3 steps

  • Red Light - Write a failing test that describes what you want the software to do
  • Green Light - Write the simplest code to the pass the test
  • Refactor - Improve the code where necessary to ensure it will be easy to change

TDD Good Habits

Make your Test-Driven Development more effective and sustainable

  • Assert First - Start with the "what", not the "how"
  • See The Test Fail - Test your test before you make it pass
  • One Reason To Fail - Write tests that pinpoint errors

What Should We Test?

Learn how to write tests that are better at driving good designs

  • Meaningful Tests - Write tests that ask questions the user cares about
  • Test Lists - Organise your thinking and track your progress with these powerful roadmaps
  • Obvious Implementations - Avoid falling into the "too many tests" trap by knowing when it's okay to take a leap

Day #2

Duplication & Design

Create better abstractions through refactoring

  • Duplication vs Reuse - How to discover abstractions in our design by examining duplicate code
  • The Rule Of Three - How to avoid "leaky" abstractions and leaving refactoring too late
  • When To Leave Duplication In - How to balance removing duplication against other design needs

Approaches To TDD

Learn the two different styles of Test-Driven Development

  • Inside-Out TDD - Test-drive pieces of your internal design and then wire them together at the top
  • Outside-In TDD - Start on the outside and let the internal design emerge through refactoring
  • Pros & Cons - The advantages and disadvantages of both approaches

Scaling TDD With Test Doubles

Learn how to test-drive complex, multilayered architectures using stubs and mocks

  • Stubs - Write fast-running unit tests for modules that need data from external dependencies
  • Mocks - Write unit tests about interactions with external dependencies
  • Outside-In With Test Doubles - Test-drive multi-layered designs with external dependencies using stubs and mocks


Who should attend? This training workshop is aimed at Java developers with at least one year's experience programming in their chosen language. It's often attended by technical leaders who wish to keep their code craft skills up-to-date, too.

What should I bring? You will need a suitable computer with your favourite Java editor/IDE installed. You'll need a reliable Internet connection (10 Mbps+), and a webcam and microphone. If your working environment is noisy, noise-cancelling headphones will help. You will find a pen and paper handy.

Who will be our trainer? Codemanship founder and course author Jason Gorman. Jason has 38 years' programming experience and three decades of professional experience as a developer, technical lead and software architect. He's run hundreds of code craft training workshops over the last 20 years, and is a very experienced teacher and mentor.

Will I be writing code? Yes. You will most definitely be writing code in this workshop. Business analysts, testers, project managers etc may find it useful to sit in and observe -at no charge - if they want to gain an understanding of Test-Driven Development and how it fits into the overall software development cycle, but this is 100% a hands-on workshop.

Is this workshop self-paced or recorded video? No. This is 100% live instructor-led training, with limited participants to ensure real-time interaction and guidance.

Find out more about Codemanship

Share with friends

Date and Time


Online Event

Refund Policy

Contact the organiser to request a refund.

Eventbrite's fee is nonrefundable.

Save This Event

Event Saved