Software QA FYI - SQAFYI

Exploring an Open Source Automation Framework Implementation

By: Vinayak Kumbhakern

Summary: This short presentation explains the journey of test automation using the WinRunner Automation Framework Support (WRAFS).

Journey of Test Automation

Record and Playback

Test Script Modularity creating small, independent scripts that represent modules, sections, and functions of the application-under-test combine them in a hierarchical fashion to construct larger tests

Test Library Architecture divides the application-under-test into procedures and functions (or objects and methods depending on your implementation language) instead of scripts requires the creation of library files that represent modules, sections, and functions of the application-under-test library files are then called directly from your test case scripts

Data-Driven Testing test input and output values are read from data files and are loaded into variables in captured or manually coded scripts navigation through the program, reading of the data files, and logging of test status and information are all coded in the test script

Keyword-Driven Testing the entire process is data-driven, including functionality requires the development of data tables and keywords

Data Driven Testing

Driver Scripts Perform initialization (if required), then call the Test Case scripts in the desired order

Test Case Scripts Perform application test case logic using Business Function scripts

Business Function Scripts Perform specific Business Functions within the application

Subroutine Scripts Perform application specific tasks required by two or more Business scripts

User-defined Functions General, Application-specific, and Screen-access functions

Keyword-Driven Testing

Driver Script Performs initialization, if required Calls the Application-Specific “Controller” Script, passing to it the file-names of the Test Cases (which have been saved from the spreadsheets as a “tab-delimited” files)

The “Controller” Script Reads and processes the file-name received from Driver Matches on “Key Words” contained in the input-file Builds a parameter-list from the records that follow Calls “Utility” scripts associated with the “Key Words”, passing the created parameter-list

Utility Scripts Process input parameter-list received from the “Controller” script Perform specific tasks (e.g. press a key or button, enter data, verify data, etc.), calling “User Defined Functions” if required Report any errors to a Test Report for the test case Return to “Controller” script

User Defined Functions General and Application-Specific functions may be called by any of the above script-types in order to perform specific tasks

Full article...

Other Resource

... to read more articles, visit

Exploring an Open Source Automation Framework Implementation