Jani Hartikainen has posted the fourth part of his unit testing series looking at using mock objects when testing database interfaces.
When testing a class which needs an instance of another class to work, you do not want to depend on the other class too much. This is where mock objects come in - a mock object is a "clone" of an object, which we can use to simplify our tests, by having the mock object perform assertions or by replacing some functionality of the mock with our custom functionality.
He introduces some of the basics of mocking objects and how to create mock objects with PHPUnit. He takes it up to the next level with a mock database example based on grabbing event details to return "fake" results from a sample dataset.