FitNesse is a great tool for collaboration and testing, and has many nice features that will help us work more efficiently and produce better software. For a .NET environment, FitNesse works in combination with several software tools and frameworks, which you'll have to download and install separately. So, in order to set up a working server, you must get your hands a bit dirty, but the effort will be well worth it. Before diving into the world of automated acceptance testing, you'll need to set up everything and run a quick sanity check to make sure that your new tool is working correctly.
FitNesse is a web application with its own server written in Java.[3] It uses a .NET version of FIT test runner (a Windows .NET executable) internally to execute .NET tests. The test runner must be downloaded separately. So, to use FitNesse for testing .NET code, you need:
Java VM 6 to support FitNesse. Download and install from http://java.sun.com.
Microsoft .NET 3.5 (at least) Framework to support FitSharp, the .NET test runner for FitNesse. Download and install from http://msdn.microsoft.com/netframework.
FitNesse server. Download the latest release from http://www.fitnesse.org/FrontPage.FitNesseDevelopment.DownLoad. The file you should look for is
fitnesse.jar. FitNesse.org occasionally goes down for maintenance. If it is not accessible when you try to download the latest release, go to the alternative download site http://www.fitnesse.info/download.FitSharp binaries for .NET 3.5. Download the latest release from http://github.com/jediwhale/fitsharp/tree/master/binary/.
There is no special installation procedure for FitNesse. Just
save the JAR file downloaded from FitNesse.org somewhere on your disk.
I suggest opening a
dotnet2
folder next to that JAR file, and unpacking FitSharp there.
This path is used in the examples in this book. If you put .NET
runner somewhere else, remember to change the path in code
examples.
Start FitNesse by executing java -jar fitnesse.jar from the main FitNesse folder (either via command line or double-click). FitNesse works as a web application with its own web server and tries to open port 80 by default. If this port is already taken on your machine, add -p 8888 to the end of the command before executing it. You can replace 8888 with some other free port on your system. I use 8888 in the examples, so if you use another one, remember to enter the correct port when you try out the examples. When FitNesse starts, you should see a command window with this message:
FitNesse (20091121) Started... port: 8888 root page: FitNesse.wiki.FileSystemPage at ./FitNesseRoot logger: none authenticator: FitNesse.authentication.PromiscuousAuthenticator html page factory: FitNesse.html.HtmlPageFactory page version expiration set to 14 days.
![]() | Do I have to use .NET 3.5? |
|---|---|
FitSharp requires .NET 3.5. You can use the older FitNesse.NET runner with .NET 2. All the examples in this book will still run, with some minor configuration changes. See http://sourceforge.net/projects/fitnessedotnet for more information. |
Open http://localhost:8888/ and you should see the welcome page (Figure 2.1, “FitNesse welcome page”).
FitNesse is up and running. When you want to shut it down later, just press Ctrl+C in the command window (or close the command window).
![]() | Stuff to remember |
|---|---|
|
[3] Actually, while I was writing this, Gennadiy Donchyts published an experimental .NET port using IKVM. I haven't tried this yet. See http://don.env.com.ua/blog/?p=57 for more information.

![[Tip]](../images/resources/tip.png)
![[Note]](../images/resources/note.png)


