10 FitNesse questions answered in a simple language
If you are like me and have heard about FitNesse but never got your head wrapped around what exactly FitNesse does and who should use it.Here are some FAQ’s that I think will be useful for anyone starting on using or thinking about FitNesse.
1)What is FitNesse?
While here’s the official description of FitNesse,from testing perspective,it’s a automation tool that fits somewhere between unit testing and UI testing(manual or automation)
2)Why should I think about using FitNesse.?
If you are looking for a simple way to get quick feedback of the quality of your software,FitNesse can be of tremendous use.If your organization aims for quicker releases FitNesse can be an important tool along with unit testing and UI automation testing
3)Who should use FitNesse?
As the one minute description of FitNesse suggests it’s for everyone.But Testers can use it to automate acceptance testing as well as test individual components.
4)What language do I write my tests in?
While initially this takes some time to get used to.The tests have to be written in Wiki language.Personally this is not the perfect way to write testcases,if you buy into the basic purpose of FitNesse you will understand the logic behind having Wiki as the language for test case writing
5)I looked at the documentation.What is this Slim and Fit business?
Here’s the official explanation through a diagram,but in simple terms they are two separate systems of writing FitNesse tests.If you are starting fresh,it’s recommended to go with Slim(However there is no complete escaping from Fit,the reasons for it will be discussed later)
6)What are Fixtures.Sounds intimidating.
Not to worry.Fixtures are nothing but simple Java classes that expose the applications/component’s functionality.
7)What is Table Styles.Is it necessary?
Yes it is necessary to understand and know what each of the Slim Table styles are.The testcases have to be written keeping this table styles in mind and it will also determine the Fixture code (class name,method name etc)
8)Where do I start?
Strongly recommend to read the official documentation.Because of it’s Wiki nature,it can get hard to have a linear narrative,but few hours spent and you will understand what’s important for you.Also read on Brett’s excellent tutorials on FitNesse.
9)Can I integrate FitNesse tests in my continuous integration cycle?
Ofcourse you can.Look at the FitNesse command line testrunner.There are also plugins available for Hudson.So check out your favorite CI and FitNesse might be available as a plugin
10)Give me the bottomline.What do I lose if I don’t use FitNesse?
Use FitNesse to fail fast.Discover and fix bugs earlier before it propagates to the UI.The learning curve is a steep one,but the rewards do pay off handsomely once the basic structure is in place.Like any good tool you need to go through the pains of learning and optimizing for your organization’s needs.
There is much more to FitNesse than what’s mentioned above.To know more add your questions here or on twitter @apexon.