- FitNesse is an automated testing
tool that has been developed to serve as a wiki and a web server for the
development of software systems and applications.
- This testing tool is entirely
based up on the frame work for integrated testing that has been developed by
Ward Cunningham.
- It has been designed to support acceptance
testing more than unit testing.
- It comes with the feature of facilitating the
description of the system functions in detail.
- With FitNesse testing tool, the
users using a developed system can enter the input when it has been specially
formatted i.e., non – programmers are able to access this format.
- FitNesse
tool interprets this input and automatically creates all the tests.
- The system
then execute these tests and returns the output to the users.
- The main
advantage of following this approach is that a very fast feedback can be
obtained from the users.
- Support in the form of classes called ‘fixtures’ is provided
by the developer of the SUT i.e., system under testing.
- The credit of writing
the code for the fitNesse tool goes to Robert C. Martin and his colleagues in
java language.
- Since the program was developed in java, therefore initially it
supported only java but now over the time it has got versions in a number of
languages such as Python, C++, Delphi, ruby, C# and so on.
Principles of FitNesse Testing Tool
This software works
on certain principles which we shall discuss now:
FitNesse as a
testing method:
- Originally, it was designed as an interface using the fit
frame work and it proved to be highly usable.
- As such it is known to
support the regression tests and black box acceptance tests in an agile
style.
- This style of testing involves all the functional testers working
in collaboration with the software developers in a software development
project in an effort of developing a testing suite.
- FitNesse testing revolves around the notion of black
box testing.
- This
involves considering the system to be a black box and testing it in the
terms of the output that is automatically generated by the tool in
accordance with the given inputs.
- The responsibility of the functional
tester is to design tests in a sense of functionality and expressing the
same in the fitNesse tool.
- On the other hand, the responsibility of the
software developer is to connect the tool to the SUT so that tests can
be executed and the actual output can be compared to the expected one.
- The
idea that drives this tool is forcing the functional testers and software
developers to come up with a common language for an improved collaboration
which will eventually lead to an improved mutual understanding of the SUT.
Fitnesse as a
testing tool:
- Fitnesse defines the tests as inputs and outputs coupled
together.
- These inputs and outputs coupled together are expressed as
variations of a decision table.
- It supports a number of variations that
range from tables that execute queries to tables for literal decision and
to tables that express the testing scripts.
- A free form table is the most
generic variation that the designers can interpret in any way they like.
- However, some sort of table is always used to express the tests.
- The primary
focus of FitNesse is on the easy creation of the tests, thus allowing the
testers to maintain a high quality for the tests rather focusing on how
the tests are to be executed.
- Three factors are involved in the creation of
the tests through fitNesse:
a) Easy creation of the
tables.
b) Easy translation of the
tables in to calls to SUT.
c) Maintaining flexibility
in the documentation of the tests.
No comments:
Post a Comment