Introduction to FitNesse in 10 minutes

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 @infostretch.

Interested in our QA Services?, Test Automation Services?

+1 408-727-1100

By submitting this form, you agree that you have read and understand Infostretch’s Terms and Conditions. You can opt-out of communications at any time. We respect your privacy.

By submitting this form, you agree that you have read and understand Infostretch’s Terms and Conditions. You can opt-out of communications at any time. We respect your privacy.

Other stories you may enjoy...

Be honest. Describe the state of your test cases.

“There’s some dead wood in there.” “Hmmm…. Someone really needs to clean them up.” “A little outdated.” For those reading this in the northern hemisphere,...

Test Automation for AEM Applications: A Primer

Adobe Experience Manager (AEM) has amassed a loyal following and it is easy to see why. AEM enables web and mobile applications to be built in a way that is quick, easy and...

Can You Simulate Global Conditions in Mobile Testing?

It is no longer enough for an app to solve a particular issue, or perform a useful function, and to assume that users will be satisfied. Apps now offer increasingly complex...