n the seminal book Refactoring, Martin Fowler writes that the prerequisite for refactoring is a good test suite. Yet, many developers experience the opposite. When they make even the slightest changes to code, tests break. Functional programming can teach us much about writing more sustainable code, including tests that are more robust in the face of changes. In this talk, I’ll share a bit of what I’ve learned from functional programming, and how you can use it to make C# code more testable, and thereby the tests less fragile.