Tuesday, 6 February 2007

CruiseControl + the FIT/FITNesse Framework

Where I'm working, we're using FitNesse on some of the in-house java development projects to run automated 'business user acceptance testing'. I'm still not 100% convinced of the value of FitNesse - it takes a lot of setup, and anytime the archictecture of the underlying systems changes, the java fixtures need to be rewritten to take this into account. This means only test analysts who are also Java devs can modify the 'framework'...

I'm currently trying to get FitNesse and CruiseControl integrated - as the development team (supposedly) use CruiseControl as their continuous integration solution, and Fit/FitNesse currently lacks a lot of the reporting and scheduling features I'ld like to see. So we get some 'free' reporting/scheduling tools, and in the future can integrate the Fit Tests with the current build process as an extra layer of tests.

So the current solution is a lot of hacking of XML/XSLT stylesheets - I don't have a JDK installed on my PC yet, so can't get CruiseControl up and running, but I've got the FitNesse end running. There is a command line runner that can recursively run tests generated in spreadsheets, and spit out xml or html results, which some nice people have posted their xslt to turn into stuff that CruiseControl can display nicely :) Not sure if the command line test runner can run the FitNesse wiki pages or not...

For invoking builds on the fly, the users will have to use the CruiseControl JMX Control Panel, which is pretty ugly and rather hard to find... I might just hardcode a html page which invokes the build myself, or see if I can put a link up on the CruiseControl admin page.

Fingers crossed! I'll post my results here in case anyone ever wants to give it a try themselves :)
Would be great if there was a CruiseControl plugin for FitNesse all ready to go...

1 comment:

  1. Hi rach,
    I found your blog entry when googeling around for CruiseControl and FIT for CPP.

    Have you have any success? I have to solve the same problem.

    Thanks in advance