- The sample blog engine as the application under test
- The FitNesse files (here, these contain SeleNesse for convenience)
- Selenium RC server
Optionally, you can find my slides hereIn that talk, I used a sample set of english-readable tests against a locally installed Microsoft blog engine, available via the Web Platform Installer. This was the application under test.
Blog Engine .NET Web Platform Installer
Below please find a link with a zip file that contains the directory structure with all of the FitNesse and SeleNesse files needed. To begin investigating, download the zip file and extract it somewhere that you can find it.
Executable Specifications using FitNesse and Selenium
Then, open that folder and execute the "runFitnesse.bat". In the resulting command prompt window, you should see the following:
FitNesse (v20091210) Started...
root page: fitnesse.wiki.FileSystemPage at ./FitNesseRoot
html page factory: fitnesse.html.HtmlPageFactory
page version expiration set to 0 days.
will tell you that the FitNesse server is up and running. The most
common causes of trouble are the JRE version on your machine (make sure
you have 1.6+), or the port that FitNesse is starting on. If that
appears to be the case, edit the runFitnesse.bat file and change that
port number (8081 might work, for example).
As soon as the FitNesse server is up, open up a browser window and enter the following URL: http://localhost:8080/.
That "front page" will also direct you to download the Selenium server -- my favorite way to take care of this is Sauce RC, found here: http://saucelabs.com/downloads. It makes running the Selenium server dirt simple.
The FitNesse front page has a brief description of the system and how it runs. The "TestBlogEngine" link will take you to the tests themselves.
For further exploring, the FitNesse and Selenium systems have established communities for support and learning. You can also follow the SeleNesse project, and join the user group to learn more.
I am more than happy to help with any questions or trouble setting this system up. It can be confusing or overwhelming at first. I would suggest starting off on the examples that exist and making small modifications to learn how the system works.