FitNesse and Servers


FitNesse is a wonderful tool. Now that it “does” BDD I think it is ready for unifying the SDLC.

Recently Uncle Bob introduced “Slim” – a new layer so that much less of Fit is running on the system under test. It uses TCP transport and I could not work out how to effectively support it on many application servers.

I did not want to change the FitNesse source. It is still being actively developed. I created a proxy that acts as a TCP server for FitNesse and an HTTP client for Slim code on the system under test.

HTTP is a connection-less protocol – and cloud servers do not fair well with session data. Fortunately Slim sends a table at a time and each page is effectively stand-alone. The code keeps the data between tables as cookies. At the moment this is the name of libraries, the last fixture and a list of symbols.

To fully understand some new technologies I chose to write the Slim code from scratch – rather than modifying that available on the FitNesse site. So far I have released versions for Google Python Appengine and .NET IIS. The code requires little change to work with other servers – for example Django or Plone for the Python.

Take a look at http://code.google.com/p/usdlc/wiki/FitNesse4Servers. You can download an installation package or the source from the repository.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s