With 20+ projects as we have at Zemanta it's not easy to assure quality of software code. Even if developers would be diligent enough to run all tests before every push to origin, the changing environment would make some tests fail. In order to catch such changes and to keep developers honest I've been conducting monthly checks of all the projects if their unittests pass. While monthly checks are better than nothing, they are far from adequate. Furthermore, checking all projects consumed quite some of my time and even more importantly did little in improving our software development practice. To automate myself away and to further improve our development practive I've set up recently a continuous testing system using Jenkins (Kalle, thanks for pushing us in this direction) that I hope will evolve soon into a proper continuous deployment system. If I would have known how easy and fun Jenkins is, I would have set it up already a long time ago. So, if you haven't yet automated your testing I strongly recommend you do it. To help you with set up, I'm describing here how we implemented continuous testing using Jenkins at Zemanta.
At the moment we have four projects that are continuously tested using Jenkins. While there were some issues setting them up, I've had no problems resolving them, since Jenkins provides many useful tools for identifying sources of issues. I hope my coworkers will become as enthusiastic about Jenkins as myself and that we will soon have all 20 of our projects continuously tested.