This document discusses how to test models using the PHPUnit testing framework. It introduces PHPUnit and unit testing concepts like the three A's of unit testing (assemble, action, assert). It explains how to think about writing test cases to cover all logic in functions, including branching logic. It discusses using mocks to unit test models in isolation without external dependencies. It also covers using the DBUnit extension for PHPUnit to perform database integration testing of models with data fixtures. The conclusion emphasizes the importance of both unit testing models with mocks and integration testing with DBUnit.