So you’ve probably heard of ZenTest/Autotest, right?
In case you haven’t, it is a Ruby gem that (among other things) automatically runs your tests whenever it notices that a file in you project has changed. It’s a great productivity boost, because it saves you from having to run your tests each time you make a change to your program. The perfect tool if you are doing TDD.
So I wanted to get this autotest functionality going for projects in other languages – like PHP, for example – but apparently ZenTest/Autotest only works within Ruby projects.
Talking to the EnvyLabs’ guys I was told about Watchr, a Ruby gem that monitors files matched by a regular expression and triggers a user defined command whenever a file changes. That’s enough to get you started in an autotest-like tool for PHP – or just about any other language.
I’ve setup an example PHP project of Watchr playing an autotest role in a PHP project:
The source code from this example can be seen at http://github.com/caike/watchr_running_php