Capture or Replay Tool In Testing

Introduction :

In the contemporary world, everything is dynamic, ever changing. One has to keep pace with the heterogeneous environments. Talking about software systems, when a product is deployed, the way a software system has responded during test phase may not be the same in a real world scenario. As a measure to address the issues that one may come across while interacting with the software application, we have a technique that comes to our rescue which enables capturing and replaying the execution patterns of the deployed software. It is precisely a method to capture the interactions that take place from the interface upto the backend.

We can understand the concept of Capture and replay in the context of GUI capture and replay tools. These tools test an application with their graphical interface. The capture and replay tool will simply record the user interactions with the system. Let us have a look at the different types of tools that offer capture and replay facility.

GUI capture/replay tools :

  • QF- Test -This is an automation testing tool that is meant for testing Java and Web GUI applications. This tool is intended for both testers and developers. Benefits offered by this testing tool are – it has a robust framework, cross platform, and has multi browser support.
    • It allows regression and load test for Java Swing, Eclipse plug ins and RCP (Rich Client Platforms) applications, applets, webstart, JavaFX on windows and linux/unix.
    • As it's a cross browser tool, one can perform testing of static and dynamic web pages (HTML5/Ajax).
    • It's robust platform offers support for complex UI components.
    • Modular structure allows development of advanced test cases and efficient team work.
    • Configurable reports and documentation.
    • User friendly, easy to adapt for both testers and developers.
    • Well written documentation, quick and competent support from the authors whenever required.
  • SWTBot -It is an open-source automation tool for testing Eclipse based applications. It offers the API's which are quite simple to read and write, thereby reducing the complexities involved in working with SWT(Standard Widget Toolkit) and Eclipse. It has the feature to record and playback tests integrating them with Eclipse. SWTBot has a plugin called GEF/GMF diagrams, editors, which helps to manipulate SWT widgets. To configure SWTBot, we need to add org.eclipse.swtbot.eclipse.gef.finder plugin .
  • GUI Dancer and Jubula - It is a automation testing tool, that facilitates functional testing of various GUI applications. It does not require much coding and is easily maintainable. Jubula is a product of BREDEX and the former version of Jubula was GUI dancer. They are functionally the same. Few aspects of Jubula can be noted down as follows :
    • No source code is required to implement the test scripts, it is a complete black box testing.
    • Tests are written by experts from the user perspective.
    • It builds up a communication among the developers, customers and testers.
    • Helps to find and fix errors in a timely manner.
    • Provides automatic screenshot on errors.
    Jubula offers support for variety of platforms like Swing, JavaFX, HTML and Ios applications, is platform independent on Windows and Linux operating systems, can be accessed across multi user database and also portable due to its XML format.
  • TPTP GUI recorder -This tool is again an automation framework which is used to test GUI applications. It enables faster creation of GUI functional tests that are simple to maintain. The Automated GUI Recorder allows recording of the execution of events which can be played later as a part of functional tests. This method of testing allows to ensure that UI components are in conformance with the expected ones.
  • Abbot -This is an automation GUI testing framework that requires one to write Java based unit test cases. It has a script editor named Costello, that allows one to write manual test scripts as well as facilitates recording of test execution that is capturing the sequence of events that had taken place throughout the process of running the application.
  • Jacareto -It facilitates the creation of animated demo of UI components. It has got a wide variety of features which includes highlighting specific components in GUI, replay action specific semantic events etc. Jacareto has two front end applications- CleverPHL and Picorder. The former has the capability to record, edit and replay user interaction scripts and the latter is a command – line record and replay tool.
  • Pounder -This is completely an automation testing tool for GUI applications. It does not store interaction scripts as XML file unlike Abbot and Jacareto and is not intended for manual test script writers.
  • Marathon -It also has the facility to record and replay, it's interaction scripts are stored in Python.
  • JFCUnit -It allows testing on Junit6 framework. It is just an extension to enable GUI testing. It allows developers to write GUI java tests and test case methods. The recording feature has been added in the recent versions.