
During my internship I dived into the world called (automatic) testing. As a PHP webdeveloper this was a totally unknown area. Testing is a common iteration in medium to big software projects (usually talking about .NET and Java projects), using iterative Agile oriented methods. Even some of our species swear by test driven development; making tests first and then code.
When testing relatively simple web projects, as 'simple' website developers, it usually comes down to basic functional black box testing. But have you ever endlessly tested registration forms by filling out hundreds of fields by hand? And have you ever changed a minor detail and later came to the conclusion it broke the whole form process? If this sounds familiar automatic testing brings the solution.
I came across the WatiN and the WatiN Test Recorder, with which you can specify functional tests. This testing framework I found pretty handy for the somewhat smaller projects I did.
WatiN is a framework for .NET languages, but it's tests are usable for any web page because the tests are conducted via a web browser. It can, for example, fill out all fields of a form, post the form and test for ouput. Combined with the WatiN Test Recorder, which, you probably didn't guess, is used to record tests, it's an easy job. So you don't even have to write 95% of the test code yourself! To get an idea check the getting started guide.