Silicon Valley Code Camp : October 8th and 9th, 2011.session
For Those About to Mock
About This Session
If you want to prove that a complex system works, a good place to start is to check that each piece is working right. Unit testing intends to do just that: take a unit of your code, and verify that it behaves properly. Unfortunately, in “real” software, classes interact with other parts of the system, which makes testing in isolation difficult. Mocking is a technique designed to overcome that issue: replacing dependencies by Mocks, lightweight versions of the “real thing”, allows you to validate the interactions of a class with its “collaborators”. I will discuss reasons you should care about mocks, illustrate how you would go about addressing them by rolling your own mocks & stubs, and demonstrate free, open-source frameworks, Moq, Rhino.Mocks and NSubstitute, which greatly simplify the process. Mocks and Stubs can sound intimidating – the goal of this presentation is to demystify the topic and give you a clear understanding of what they are, where they can help you, and to give you a good quick-start so that you can productively use them in your own code.