PhpRiot
News Archive
PhpRiot Newsletter
Your Email Address:

More information

Project: Phactory - A Database Factory for Unit Tests

Note: This article was originally published at PHPDeveloper on 12 August 2010.
PHPDeveloper

Josh Butts pointed out a new tool for those creating unit tests (either in PHPUnit, SimpleTest or any other PHP unit testing framework) that work with databases that replaces fixtures - Phactory.

Phactory is an alternative to using database fixtures in your PHP unit tests. Instead of maintaining a separate XML file of data, you define a blueprint for each table and then create as many different objects as you need in your PHP code. By using a database factory instead of fixtures, your unit tests will be more clear and easier to write. You'll also be able to change the objects you create programmatically instead of being stuck with the same old fixtures.

The tool gives you a light-weight ORM to use in your tests and, once you define a PDO connection, lets you interact with the objects just like they were normal tables. An example is included on the main page of the site and the code for the project can be found on github.