Search this website:
WinRunner® Automation Framework Support
- Categorized in: TESTING TOOLS
WRAFS is an acronym for WinRunner® Automation Framework Support. This framework is built on top of WinRunner. Physically it is a collection of generic scripts, which can be used to test any application. This is a keyword-driven testing or table-driven testing automation framework. Refer the following link for the basic understanding of the Table Driven Automation Framework.
WRAFS can be used for any of the following types of applications -
Ø Web based applications
Ø Java based applications
Ø Windows based applications
Ø C/C++/C# Applications
Ø VB Applications
Ø .NET Applications
Ø COM (with enhancements)
Ø Oracle (with enhancements)
(In general, all applications that can be tested by WinRunner can be tested by WRAFS also).
What are the characteristics of WRAFS?
The following are the characteristics of WRAFS,
Ø It is an Application independent framework
Ø It is a Keyword Driven (or Table Driven) Test Automation Framework
Ø The test assets that we develop are Tool Independent
What is the advantage of using WRAFS?
The following are the benefits that we can achieve using WRAFS,
Ø Tester need not spend time on creating the test scripts, instead he/she can spend much efforts on other aspects like test plan, design, etc.,
Ø Run automated test cases more reliably.
Ø Reduce maintenance of scripts and increase productivity.
Ø Test cases are tool-independent.
Ø The frame work is application independent, so any application can be tested without changing the scripts in the framework.
Ø In the perspective of an organization, the efficiency of test automation can be improved,
How to achieve Application Independency?
At present we develop separate Automation Scripts for testing each component of ZENWorks using the Data driven automation strategy. It has its own pros and cons. When WinRunner Automation Framework (as mentioned earlier WinRunner Automation Framework is just a collection of scripts that are generic, so that it could be used for all applications) is used we need not write scripts separately for each component. The WinRunner Automation Framework is rich and is generic so that any application can be tested using this framework.
How to achieve reusability?
By using the WinRunner Automation Framework (a collection of generic scripts) for several applications we can achieve the concept of reusability. We achieve reusability in two levels one is
- Script Level à Application Independency
- Test Table Level à Tool Independency
What does WRAFS Framework comprises of?
The WRAFS framework is a collection of generic TSL scripts. The framework is void of any information about the Application Under Test. The framework has two parts, they are.
1. The Driver Part
2. The Engine Part
These scripts are compiled modules (Refer the complied modules section in the WinRunner Tutorial).
What do you mean by void of any information about the application under test?
By, this it means that, the collection of scripts that comprises the framework does not contain any information about the Application Under Test. So we could achieve application independency. To be still precise, the framework does not embed any details about what application to test and what test cases to execute.
The information about which application to test and what test case to execute is given as the input to the framework.
How does the framework understand about the application under test?
Hope you may be aware how WinRunner recognizes the components in the application under test (by means of GUI). Since this framework is also going to be run on WinRunner, the same means of recognition is used. The same .gui file is given as the input to the framework.
Where it can be obtained and what about licensing/fees?
The web page of WRAFS is located at
It is an open source under the GPL license:
The latest release is always available for download from Source Forge –
Currently it supports only Windows platforms.
o WinRunner 7.5 and later
o STAF (optional)
o SAFS (optional)
o Java tools and utilities (optional)
One can think WRAFS as a layer on top of WinRunner which does not cost in terms of licenses. However, until the tool-independent multi-platform engines are available, one has to invest by just installation and usage of WinRunner to get benefit. User need not understand the TSL to implement test cases. This increases productivity many fold.
The overhead of using is one has to install and learn usage of the functions/actions provided by WRAFS. J
Refer the WRAFS Tutorial
WRAFS being a keyword-driven framework, one does not need to script using TSL. Testers can develop tests without learning the underlying automation tool. The tests are easier to understand, easier to maintain, and provide maximum code reuse.
The SAFS Framework contains Java-based, vendor-independent tools and services available to all existing and future SAFS Engines. It is also the foundation for multi-platform test execution--which is currently in development. WRAFS is a specific SAFS Engine built with WinRunner®. WRAFS can run standalone without any of the SAFS Framework tools and services, but it can also take advantage of SAFS for added functionality (once complete SAFS is ready).
The core of the WRAFS engine is developed using TSL available with WinRunner®. In addition, WRAFS uses Windows DLLs coded in C/C++ and COM objects coded in Visual Basic 6.0. WRAFS can also interface with and take advantage of our newer engines, tools, and services coded in Java.
WRAFS engine has worked with each new release without modification. Of course, we cannot guarantee that a new release of WinRunner will not cause problems, just as any new release of WinRunner can break any WinRunner script or test. If a new release were to cause such a problem, we have every intention of fixing what WinRunner breaks and providing that as quickly as possible. This is a rare case, as it could appear only when the newer WinRunner version is not backward compatible. (This incompatibility is almost impossible).
Email to Friend
Fill in the form below to send this article to a friend: