White Box Testing
Test your code
   Home      Tools      AcceptanceTesting
Robot Framework

Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). It has easy-to-use tabular test data syntax and it utilizes the keyword-driven testing approach. Its testing capabilities can be extended by test libraries implemented either with Python or Java, and users can create new higher-level keywords from existing ones using the same syntax that is used for creating test cases.

Robot Framework project is hosted on Google Code where you can find further documentation, downloads, and issue tracker. The framework has a rich ecosystem around it consisting of various generic test libraries and tools that are developed as separate projects.

FitNesse is a web server, a wiki, and an automated testing tool for software. It is based on Ward Cunningham's Framework for Integrated Test. FitNesse is designed to support acceptance testing rather than unit testing in that it facilitates detailed readable description of system function.

FitNesse allows users of a developed system to enter specially formatted input (its format is accessible to non-programmers). This input is interpreted and tests are created automatically. These tests are then executed by the system and output is returned back to the user. The advantage of this approach is very fast feedback from users. The developer of the system to be tested needs to provide some support (classes named "fixtures", conforming to certain conventions).

FitNesse is written in Java (by Robert C. Martin and others). The program first supported only Java, but versions for several other languages have been added over time (C++, Python, Ruby, Delphi, C#, etc.).

Cucumber lets software development teams describe how software should behave in plain text. The text is written in a business-readable domain-specific language and serves as documentation, automated tests and development-aid - all rolled into one format.

Cucumber works with Ruby, Java, .NET, Flex or web applications written in any language. It has been translated to over 40 spoken languages.

Cucumber also supports more succinct tests in tables - similar to what FIT does. Dig around in the examples and documentation to learn more about Cucumber tables.
Marathon runs gui based acceptance tests against Java/Swing applications. Marathon provides an integrated environment for test script creation and execution. Currently, Marathon supports Jython and JRuby script models for recording the test scripts.
JBehave is a Java-based framework supporting Behaviour-Driven Development (BDD), an evolution of Test-Driven Development (TDD) and Acceptance-Test Driven Developement (ATDD).

BDD aims to make development practices more accessible and intuitive to newcomers and experts alike, but shifting the vocabulary from being test-based to behaviour-based. It positions itself as a development paradigm, emphasising communication and automation as equal goals.

In BDD, the behaviours represent both the specification and the test cases.

You can find out more about Behaviour-Driven Development on the BDD wiki, or in the article Introducing BDD.


Concordion is an open source tool for writing automated acceptance tests in Java

There are also versions for .NET, Python, Scala, and Ruby. [More details]
  • Tests can become truly useful documentation Concordion acceptance tests are so readable they can double up as system documentation. They are written in HTML, so can be easily hyperlinked into a navigable structure. And, since the tests run against the system, you can be confident the documentation is always up-to-date.

  • Helps you to separate "what?" from "how?" Tests that include a lot of implementation detail lock you into that implementation. Concordion helps you to document the logic and behaviour of your system in a way that gives you the flexibility to change the implementation later on.

  • Purposely small command-set is simple to learn Concordion has been designed with a short learning-curve as a top priority. The tests are also integrated with JUnit, which makes them easy to run and easy to include in an existing project build.

specs2 is a library for writing executable software specifications. With specs2 you can write software specifications for one class (unit specifications) or a full system (acceptance specifications)

SpecFlow aims at bridging the communication gap between domain experts and developers by binding business readable behavior specifications and examples to the underlying implementation.

Our mission is to provide a pragmatic and frictionless approach to Specification-By-Example for .NET projects.

SpecFlow also supports the concepts of Acceptance Test Driven Development (ATDD) and Behavior Driven Development (BDD), which are often used synonymously with Specification-By-Example.

SpecFlow is open source and provided under a BSD license. As a part of the Cucumber family, SpecFlow uses the official Gherkin parser and provides integration to the .NET framework, Silverlight, Windows Phone and Mono.
This is an external task for Ant that will invoke the FIT engine on the test input file.



In a development effort consisting largely of Java where the chosen tool for the project's build is Apache Ant.


The integration with Ant allows the acceptance tests to be run as part of the overall build. In projects where a build and deploy is complex and requires integration with application servers or other complexities, having the power of Ant to handle the steps and run the tests together is an important benefit.


The basic runner iterates over a FileSet of test documents in the specified input directory, and leaves the results in an output directory.


  1. The task loads the fixture html documents from a specified location.
  2. The runner executes each fixture.
  3. The result html files are written to the specified output directory.
  • Why you need to do functional testing as well as structural testing (NUnit)
  • How to improve the communication value of specification documents by having customers test the code using FIT
  • WinFITRunnerLite, a program that allows Excel files to be executed as functional tests of your software
  • A sample development episode showing how to test software using FIT and WinFITRunnerLite
GuiRunner is a front end for running fit-tests. Its goals are to simplify the customer-side tasks: running existing tests, create new tests, manage existing ones. GuiRunner invokes other runners, interprets their output and presents a visualization of the results. So, GuiRunner can be used together with different fit-implementations: java, perl etc.
Beside that, GuiRunner can be also used as a command-line directory runner.
FITpro is built upon the Framework for Integrated Test (Fit). It provides integration with Eclipse and MS VS, and web UI. FITpro advanced features include code generation, suite support, and test to fixture links. See project's Wiki for more information
Fit Runner.NET
Fit Runner.NET is a tool that allows you to run Fit tests from a simple to use graphical interface.

This website is to help and support SDET and QA engineers in white box testing technologies, tools and resources. Please Contact Us to publish your articles tutorial on http://www.whiteboxtest.com/