An Innovative Acceptance Testing Framework using Fitnesse, Xebium and Monkeytalk

Contributed by Raman on 3 Sep 2013

Fitnesse, Xebium and Monkeytalk … Let us say three to tango

Life needs to be simple, organized and predictable, even for a test engineer and a Business Analyst (BA). And both need to talk to each other in nearly the same language. This is where it gets tough. Business analyst talks in terms what should be the output while test engineer is concerned with how to do the testing. Somehow the lingo in which each expresses his/her goal is different. A Business Analyst uses simple English while a test engineer uses sophisticated tools like selenium (http://docs.seleniumhq.org). Throw in a customer who just wants to verify the status of a project all by himself and wants to express his/her own test cases, it gets more complex.

We, at Neev, wanted to find a way to make all these folks happy. Create an environment where business analyst can understand what test engineer is testing and so can the customer. In fact, create an environment where customers of Business Analysts should be able to create their own acceptance test cases with little or no help from the test engineer. Sounds utopian? Not exactly.

We found out that most of the components were already in place and just needed some glue to fit them together. Fitnesse (http://Fitnesse.org), Xebium (http://xebia.github.io/Xebium/) and Monkeytalk (http://www.gorillalogic.com/monkeytalk) were what we bumped into.

Fitnesse is an open source acceptance testing framework in which tests are written in wiki format in a tabular structure. These tables are then interpreted by custom fixtures to test against the system under test. Fitnesse also runs as a web server and has a web UI where these tests can be edited and run remotely. Being inherently a wiki, all the features of versions and history are available. Nice!

 

But who is going to write the fixtures? Xebium and DBFit (http://benilovj.github.io/dbfit/) come in handy. Xebium is a selenium fixture for Fitnesse. It offers a translation layer between selenium and Fitnesse formats. So now the tests, in addition to being readable, are also execution worthy. Of course, needless to say, all browsers are supported including Phantomjs (http://phantomjs.org/) and Saucelabs (http://www.saucelabs.com ). DBFit is a fixture to query database and check for values. Cool!

 

We are not done yet. We went a step further and integrated Monkeytalk, a cross-platform testing framework for Android and iOS devices, into Fitnesse. And thus, the platform is now complete. We will be releasing the code for Monkeytalk integration shortly. Keep visiting Neev blog.

Visit us at Neevtech.com to know more about our offerings.

Tags: , , , , , , , , , , , , , , ,

facebook comments:

Leave a Comment

Security Code: