Sebastian Bergmann has a new post that lists a few quality assurance testing tools you can use to ensure that you and your code are safe to make the jump to production.
He's laid out a map of the tools that can all interact to create a more robust environment for automatically building and testing your code. Here's his list:
The results of all of these tools running on your code is then fed into the CruiseControl instance and passed off to phpUnderControl for final deployment.