
Mastering Test-Driven Development in C#
A workshop to learn the transformational practice that will lead you to simple code, high quality and peace of mind.
What you'll achieve:
- Master the Red-Green-Refactor cycle and make it second nature
- Write tests that guide design decisions, not just verify code
- Test-drive complex scenarios with external dependencies
- Refactor legacy code safely using TDD principles
- Integrate AI tools seamlessly into your TDD workflow
Prerequisites:
- Experience building C# .NET applications
- Basic familiarity with unit testing concepts
- Comfort with your preferred IDE (Visual Studio, Rider, VS Code, etc.)
- Willingness to participate actively in hands-on exercises

"Test-Driven Development changed the way I write code."
You've heard TDD practitioners say this before, haven't you?
They can't stop talking about benefits like:
- Fewer bugs
- Surprising productivity gains
- Code that's actually maintainable
- A stress-free developer's life
- An almost suspicious level of confidence in their code
Sounds too good to be true?
Yet few practices earn the "Transformational" label as consistently as TDD does.
But let's address what you're really wondering: If TDD is so amazing, why isn't everyone doing it?
Simple. Although TDD is conceptually straightforward, mastering it is hard.
Don't worry, though. This Workshop will take you there.
By the end of this Workshop you will:
- Master the steps of a proper TDD session
- Drive development through tests, not the other way around
- Confidently test-drive code with external dependencies
- Use refactoring techniques to improve code without breaking it
- Create tests that survive codebase evolution
- Be successful with TDD in the context of a Team
- Fearlessly maintain legacy applications using TDD principles
- Leverage AI tools to enhance your TDD workflow
All using C# and tools you already love.
I wouldn't be surprised if you become test-addicted by the end.
Is this Workshop for you?
Want better tests and better code? Then yes, this Workshop is for you.
If you've built C# .NET applications and written some unit tests before, you have all the prerequisites needed.
This won't be a passive experience. I believe in learning by doing, so prepare for two days of hands-on work and collaborative problem-solving. Warning: This is not a lecture-type workshop—come ready to participate actively.
What will you need?
I strongly believe you should learn using your day-to-day tools. For this Workshop, just bring:
- Your favourite IDE (Visual Studio, JetBrains Rider, VS Code, Cursor, etc.)
- .NET 9
- Docker (no need for Kubernetes)
- Git
- GitHub.com Account
- Your favourite AI Assistant
Custom programs available - Contact us to discuss your needs
Curriculum
A hands-on learning journey that transforms how you approach software development through test-driven practices.
Day 1: TDD Foundation & Core Practices
Build a solid foundation in TDD fundamentals through hands-on practice and real-world exercises.
Key Topics:
- Master the Red-Green-Refactor cycle with practical exercises
- Learn the 3 Rules of TDD and 4 Rules of Simple Design
- Apply TDD driving patterns (Fake It, Triangulate) through mob and pair programming
- Practice refactoring techniques and improve test quality
- Understand solitary vs sociable tests and when to use each
- Use mutation testing to validate test effectiveness
- Work with test lists and systematic problem decomposition
Day 2: Real-World TDD & Team Integration
Take TDD to production environments with dependencies, legacy code, and team challenges.
Key Topics:
- Handle external dependencies with test doubles and mocking strategies
- Apply Outside-In TDD and London School approaches
- Work with legacy code using approval testing techniques
- Navigate the test pyramid and architectural considerations
- Address team adoption challenges and common anti-patterns
- Practice real-world scenarios through collaborative problem-solving
- Build sustainable TDD practices within team contexts
Upcoming Sessions
Join our next available sessions. Limited seats available.
No Scheduled Sessions for Mastering Test-Driven Development in C#
Looking to organize a private session of this 2-day intensive for your team? Let's discuss how we can tailor it to your specific needs and schedule.
What participants say
This workshop completely changed how I write code. The TDD approach has eliminated most bugs from my development process and made refactoring a joy instead of a nightmare.
Gui's hands-on approach made TDD click for me. Two months later, our team's code quality has improved dramatically and we're shipping features faster than ever.
I was skeptical about TDD slowing down development, but this workshop proved the opposite. We're now more productive and confident in our releases.