Unit testing vs. Integration Testing : The Restaurant Analogy
Saturday, May 31, 2008 at 3:12PM
Roy Osherove in Agile, Art Of Unit Testing, Unit Testing

Here's an analogy I came up with to explain the difference between unit tests and integration tests.

Imagine going to a restaurant with a bunch of your friends. there are some couples there as well as singles. At the end of the meal, it is time to pay. Unit testing is like giving a separate bill to each couple or single. Each person knows only what they needs to pay as well as tip, but do not care what anyone else had, or what the total meal amount is. as long as they pay what they need, they can go home peacefully.

Integration testing is like giving one big check to the group, with everyone having to calculate on their own how much they need to pay. sometimes everyone things they are good, but in the end the total amount may be too high or too low. There is a lot of interaction going on to decide who pays for what and who has already paid.

Article originally appeared on Osherove (http://osherove.com/).
See website for complete article licensing information.