Designing Tests That Survive Refactorings
Testing
4 hours
Duration
12-25 people
Group Size
Intermediate
Level
Half-Day Workshop

Designing Tests That Survive Refactorings

Learn how to design tests that remain stable, even as your code changes. Discover how architecture and testing strategy work together to give you confidence without brittleness.

What you'll achieve:

  • A clear definition of what a real unit test is (and isn't)
  • Practical techniques for designing behaviour-focused tests
  • A clear view of how domain-centric architecture makes an effective test pyramid possible

Prerequisites:

  • Experience writing tests
  • Want to improve test quality without adding overhead
  • Care about long-term maintainability, developer experience, and developer confidence
Instructor
Gui Ferreira
Software Developer Educator

"My tests break every time I refactor."

Sound familiar?

You've written tests. You might even have high code coverage. But every time you refactor, tests break. And despite all that coverage, you still lack confidence in your code.

Something isn't right.

The problem isn't that you're writing too few tests. It's that you're writing the wrong kind of tests.

Tests that are coupled to implementation details. Tests that verify how code works instead of what it does. Tests that become a burden instead of a safety net.

This workshop will change that.

In this workshop, you'll learn how to design tests that remain stable, even as your code changes. Instead of chasing code coverage or testing every method, you'll see how architecture and testing strategy work together to give you confidence without brittleness.

By the end of this Workshop you will have:

  • A clear definition of what a real unit test is (and isn't)
  • Practical techniques for designing behaviour-focused tests
  • A clear view of how domain-centric architecture makes an effective test pyramid possible

Is this Workshop for you?

Yes! If you're tired of tests breaking every time you refactor, or if you've ever wondered why your test suite gives you little confidence despite high coverage.

This workshop is for developers who:

  • Have experience writing tests
  • Want to improve test quality without adding overhead
  • Care about long-term maintainability, developer experience, and developer confidence

What will you need?

Come ready to participate. No computer required.

This is a no-code workshop. But it won't be a lecture. You'll engage in collaborative problem-solving, discussions, and exercises designed to challenge your assumptions and sharpen your testing strategy.

Curriculum

A collaborative learning experience that challenges your assumptions and sharpens your testing strategy.

1

Effective Testing Strategies

4 hours

Transform how you think about tests through discussions, exercises, and collaborative problem-solving.

Key Topics:

  • Define what a real unit test is (and isn't)
  • Design behaviour-focused tests that survive refactoring
  • Connect architecture decisions to testing effectiveness
  • Build an effective test pyramid with domain-centric design
  • Balance confidence and maintenance without brittleness

Upcoming Sessions

Join our next available sessions. Limited seats available.

No Scheduled Sessions for Designing Tests That Survive Refactorings

Looking to organize a private session of this half-day workshop for your team? Let's discuss how we can tailor it to your specific needs and schedule.

Frequently Asked Questions