GOTO is a vendor independent international software development conference with more that 90 top speaker and 1300 attendees. The conference cover topics such as .Net, Java, Open Source, Agile, Architecture and Design, Web, Cloud, New Languages and Processes

Mark Seemann, Creator of AutoFixture; author of Dependency Injection in .NET

Mark Seemann

Biography: Mark Seemann

Mark Seemann is the inventor of AutoFixture and the author of "Dependency Injection in .NET". He is a professional software developer and architect living in Copenhagen, Denmark, and currently an independent advisor. He enjoys reading, drawing, playing the guitar, good wine, and gourmet food.

Presentation: Look, no Mocks! Functional TDD with F#

Track: Microsoft Technologies / Time: Friday 11:30 - 12:20 / Location: Marselisborg

Test-Driven Development (TDD) is supposed to be about feedback, but a recent criticism has been that it tends to cause 'test-induced damage', because the design resulting from TDD is worse than an alternative design one could produce without kowtowing to testability.

The counter-argument is that this may indicate a failure in API design, rather than a failure on the part of the TDD process.

Often, the problem with TDD is an over-reliance on Mocks, which again causes an over-emphasis on mutation. Functional Programming, with its emphasis on immutability, can help significantly pull the tests away from relying on Mocks, leading to a better overall design, and more maintainable unit tests.

This session uses F# to demonstrate how to use Functional design with TDD
to remove the need for Mock objects.