Assumed Audience: software developers interested in honing their craft—especially folks just trying to get a handle on good techniques for testing. A fundamental principle of testing software is: test the interface. Failing to keep this principle in mind is at the root of the majority of the problems I see in automated tests (including quite a few of those I’ve written in the past!). What do I mean by test the interface? I mean that when you are thinking about what kind of test to write, ...