Presentation: "API Design as if Unit Testing Mattered"
Session:
Professional Practices
Time: Friday 14:15 - 15:00
Location: Ballroom Le Grand 3
Abstract: Have you ever tried to write a unit test for a class that uses an external API? An API that is not mockable? Testing seems to be the last thing on our minds when we design APIs. It isn't that we don't test our APIs, we just don't make it easy to test code that uses our APIs. In this talk, Michael Feathers will describe a set of principles which will help you balance the security and extensibility of your API with the testability of client code. The principles will motivated from counter-examples in several commonly used frameworks in written in Java, C++, and C#. After the talk, you will be aware of the tradeoffs that you must make when considering testability, and how to make them in a manner appropriate for your development.
Download slides