![]() |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() |
![]() |
|
![]() ![]() |
Author | Message | ||||||||||||||||||||||||||||||||||||||||||||||
naruboinac
Newbie ![]() Joined: 11May2007 Online Status: Offline Posts: 1 |
![]() ![]() ![]() Posted: 21May2007 at 8:23pm |
||||||||||||||||||||||||||||||||||||||||||||||
Hi , Generally test process
starts in the initiation phase. BA collects the requirements and the
BRS document is prepared, which is an input doc for the requirements
phase. In this phase requirements analysis and feasibility study is
done and the output is SRS. Based on SRS, Test plan is prepared and we
move on to design phase. In the design phase,
HLDs(High Level Design) and LLDs(Low Level Design) are prepared. Test
cases are designed based on HLDs and LLDs. The designed TCs are sent
for a review. After review, the review team can send suggestions,
modifications and additions in the test cases. Once
we receive the build, we can start executing the test cases and report
the bugs and get them fixed. Once the build is bug free, we can
release the build. As far as I know, we
can explain this process for the question. plz correct me if any mistakes are there. Thanks and Regards, chanduPost Resume: Click here to Upload your Resume & Apply for Jobs |
|||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||
Santu
Newbie ![]() ![]() Joined: 07Jun2007 Online Status: Offline Posts: 1 |
![]() ![]() ![]() |
||||||||||||||||||||||||||||||||||||||||||||||
Hi Chandu,
In fact as a tester u will not involved into design phase. And test cases will not be prepared based on HLD LLD, they are prepaerd based on SRS/FRS/Use cases. |
|||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||
Santu
Newbie ![]() ![]() Joined: 07Jun2007 Online Status: Offline Posts: 1 |
![]() ![]() ![]() |
||||||||||||||||||||||||||||||||||||||||||||||
Hi Chandu,
In fact as a tester u will not involved into design phase. And test cases will not be prepared based on HLD LLD, they are prepaerd based on BRS/SRS/FRS/Use cases. |
|||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||
sai reddy
Newbie ![]() Joined: 27Jun2007 Location: India Online Status: Offline Posts: 1 |
![]() ![]() ![]() |
||||||||||||||||||||||||||||||||||||||||||||||
![]() thanks for giving good ans for testing process.
can u plez tell me abot keyword driven framework in QTP.
i hav asked in many interviews wat framework do follow in ur company.
can u explain me ....................... waitin 4r ur rply
|
|||||||||||||||||||||||||||||||||||||||||||||||
sai
|
|||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||
nayyar
Newbie ![]() ![]() Joined: 30May2007 Online Status: Offline Posts: 1 |
![]() ![]() ![]() |
||||||||||||||||||||||||||||||||||||||||||||||
Keyword Driven Framework for Automation
Testing
Sachin A Khade
Harpreet Kaur Nijjar
Keyword Driven Framework for Automation Testing
Abstract
This paper presents
an object based keyword driven framework for J2EE web based application. This
framework facilitates integration of keyword driven testing and traditional
scripts independent of the application.
This framework is
developed to provide an easier approach to Functional
Testing and Business Process Testing
by passing appropriate Parameters for particular Action words in the framework. This framework allows reasonably
intuitive tests to be developed and executed without modifying the test
scripts.
Test engineers can
use the framework to develop a driver which uses data to vary test script
execution instead of using test scripts directly. Team Leads can benefit as far
as technical aspects are concerned. Project managers and Business mangers can
handle GUI testing in reduced time and minimized cost.
Keyword-driven frameworks are very powerful, and they make it super easy for
non-testers and non-technical testers to contribute to the test project.
This paper
discusses a keyword driven approach for a practical example and highlights the
benefits of it in comparison to test library approach for automation testing.
The software testing tool integrated is Quick Test Professional. In addition
this paper gives a brief introduction to some of methods and QTP (VBS)
libraries used in QTP scripts.
The test scenarios
are built dynamically based on the selection of the keyword and the parameters
passed. Hence, the execution sequence of the Test Scripts is determined by
output of each executed step.
The keyword driven
framework developed was applied to a J2EE web based application. This paper documents
an example of low priority functional test case of the particular application.
But the future scope involves Business Process Testing Suite along with entire
Functional Testing Suite.
The paper discusses
the significant advantages of Keyword driven framework in comparison to Test
Library framework. The real benefit is the improved maintainability and reusability
of the test scripts. A comparison amongst Keyword driven framework and Test
library framework is depicted which signifies the flexibility and minimized
cost involved in Keyword driven framework.
An example
discussed shows the execution of a particular Functional test suite consumes five
hours using Test Library framework whereas for Keyword driven framework same
can be accomplished in three hrs.
The Framework
design and its components are discussed in detail in the paper. Main components
of Keyword driven framework include Test Case IDs, Result, Keyword, Output,
Parameters and Time-Stamp.
In the Framework
Recovery Scenarios (.qrs files in QTP) at appropriate points during Test Suite
execution have also been introduced. Hence, on occurrence of application error,
respective Recovery Scenario gets enabled. The framework is so designed that,
it’s possible to view the snapshot of the application at the very instant when
Recovery scenario got enabled, making testing easier and flexible.
This framework has
proved to be beneficial to the organization in terms of reduction of the
maintenance cost for test scripts. Few problems related to Test Library
Framework and Application Under Test were overcome using this framework. Test
Library framework encountered synchronization problem which has been discussed
and analysed in detail.
This paper also discusses the future
enhancements of the Keyword Driven Framework, more problem solving and gaining
benefits using this framework
Introduction
Keyword driven
framework consists of Data Tables and
Keywords, independent of the test
automation tool used to execute them and the test script code that
"drives" the Application Under Test (AUT) and the data. Keyword
Driven Framework looks very similar to manual test cases. In a keyword-driven
test, the functionality of the AUT is documented in a table as well as in
step-by-step instructions for each test. In this method, the entire process is
data-driven, including functionality.
This paper gives a
detailed comparison between Test Library framework and Keyword Driven
framework. It also discusses issues related to automation of Java applets and how those issues are tackled
while designing the framework.
Audience
Test engineers can
use the framework to develop a driver which uses data to vary test script
execution instead of using test scripts directly. Team Leads can benefit as far
as technical aspects are concerned. Project managers and Business mangers can
handle GUI testing in reduced time and minimized cost.
Keyword-driven frameworks are very powerful, and they make it super easy for
non-testers and non-technical testers to contribute to the test project.
Benefits
of Keyword Driven Framework over Test Library Framework
Test Library Framework:
The Test Library Framework divides the
application-under-test (AUT) into procedures and functions (or objects and
methods) instead of scripts. This framework requires the creation of library
files (VB Script libraries) that represent modules and functions of the AUT.
These library files are then called directly from the test case script.
Various
factors why the Keyword driven frame work is implemented in the Business
Process Testing
1.
Setting up the Automation Test Environment.
2.
Flexibility.
3.
Reusability.
1.
Setting up the Automation Test Environment.
With
the Test Library driven frame work, the Business analyst or manual testers had
to key in too many parameters before starting the execution of the scripts.
Hence business analyst required a fair knowledge about the automation script
and scripting, this is overcome by using the Key word driven frame work in
which the business analyst will have to key in only the Keywords which is
related to the business operation. This makes the test suite executable by the
Business analyst and even manual testers without having the knowledge of
scripting and QTP.
2.
Flexible in use.
If a
Business analyst has to test only a specific Business Process or functionality
or scenario then with the Test Library test frame work it was not possible to
do so because all the dependency factors was not handled, where as the Keyword
driven frame work helps to achieve the Business processing testing or specific
functionality testing or scenario testing just by building in the scenarios as
required.
3.
Reusability.
For
each and every scenario that has to be tested the keyword driven frame work
reuses the library files that has been developed which in turn reduces the redundancy.
Evolution of Keyword Driven Framework
The issues related
to Test Library Framework and J2EE Web Application lead to the evolution of
this framework.
Problems related to Test Library Framework:
1.
Test Runs were frequently going out of sync.
Root-Cause
Analysis:
1.
Framework was not able to handle the dependency between test
cases. Whenever test case fails, it used to execute the dependant test cases.
Libraries were not returning the ‘Pass / Fail’ Status
2.
Libraries were not
returning the ‘Pass / Fail’ Status
Solution:
1. Designed Keyword
Driven Framework in which,
‘If Fail’ column
introduced,
-
If some test case fails, execution control goes to the test
case / step mentioned in the column.
‘If Pass’ column
introduced as well,
- If particular test case is
disabled, it disables the dependant test cases / steps in the column.
2. Class Libraries
modified to return pass fail status.
For example:
-If object is not
present the library returns a message ‘Object is not present within the
application’,
-If some vb script
error occurs, it returns error code and description.
-If some message
pops-up, recovery scenario updates an environment variable. The value of the
variable is returned by class library to the main driver script. The step is
logged as failed.
-If everything is
executed as expected then only class library returns ‘Pass’ result.
Problems related to J2EE Web Application
Java Applets:
Every application
contains some customized controls based upon the enterprise requirements. There
are some customized controls / widgets developed in the form of Java applets in
the J2EE application for which this framework is developed. These are
customized Applets contained standard Java widgets. These customized applet
used to publish only that much data which is needed outside it for programming
purpose.
These applets are
basically tree and list controls.
List:
A row in the list
applet keeps on changing the location (x, y co-ordinates) which is dependant on
the sorting of various columns.
Tree:
A tree node keeps
on changing the location as per the expansion and contraction of various
branches of the tree.
Analysis:
Sorting was taken
care previously by QTP libraries (logic implemented in .vbs files). It was
dependant on the Automation tester’s
perception while designing the test case. Tester used to send the sorting
parameters while calling the libraries.
Sometimes, sorting
column/order used to change on some builds due to defect fixing.
Windows shell
script to select Arrow keys on the keyboard was used to traverse to particular
node. This process was time consuming.
There are some
methods present in Java for various widgets which will return the rectangle
object (x, y co-ordinates and height as well as width) of particular cell of a
table / node of a tree at runtime. These methods were not present in those
applets. For e.g. getPathBounds() for tree.
Solution:
Development team
was requested to introduce some new public methods in the Java applets based on
above information.
There were some
customized methods already present in the list applet which used to return the
position of the row after sorting.
These methods were
used in the QTP libraries.
Keyword Driven Framework Overview
.
![]() Block Diagram of Keyword Driven
Framework
Functional Expert: This is Manual Testing Team taking
care of Manual Testing Activity.
Test Suite: This excel sheet consists of the Test case
format being followed.
Test Scenarios: This is a collection of Test cases that
constitutes the end to end operation of an application as per the user role and
permissions. Each Test Scenario is independent of other and if one fails
execution of another does not get affected.
Results: When the Test is run then Control sheet
gets updated with the corresponding results. Also in tool self generated result
takes place in xml file.
QTP Expert: This consists of Automation Team who is
actually involved into automation of the AUT. Each one of them is aware of QTP
operation and Scripting.
QTP Startup Script: This script is used to launch/run
the Driver script.
Driver Script: This script is used to drive the excel
sheet like Test Scripts, Test Scenario file.
E.g. Open an excel
sheet, save excel sheet, close excel sheet.
Class Libraries (Functions & parameters): Class libraries
are developed to interact with the application widgets present in the applet
(In case of Java based application).It is a collection of vbs to be used with
the overall application.
Component Libraries (Functions & parameters): These are business
component libraries which are making use of Class libraries to automate the
business components like Users, Workflows, and Departments. These are the .vbs
Functions already defined which contains application specific steps.
Functions Script (vbs: keywords and functions mapping): These are User
Defined functions used to map with the keywords getting used by spreadsheet or
control sheet.
E.g. for Login
keyword, Login function is created and being called when QTP encounters this
Login word it gets executed.
SetObjects.vbs: This is used to map the objects which are
present into Object Repository with the VB variables from VB Script.
Object Repository: Stores the AUT object’s properties
and its respective values.
Utility Libraries (Snapshots, DB): These are general
purpose libraries with the help of them we can perform different tasks like
Event logging, logging results to DB and connection to the database, taking
error snapshot while running the script. Etc.
Recovery: This is one of the major components getting
used by the test script. Initially recovery is being kept disabled and when it
is actually going to be used with Framework then enable and it performs its
intended operation.
Brief functional overview of Recovery Scenario is shown as below.
![]() How
Recovery Scenario Works with The Framework?
Some vb script error may occur while
executing the main/sub functions in class library. It returns error code and
message to class library function then class library gives call to the Recovery action which enables and
activate all the Recovery Scenarios.
The Recovery Scenario instantiates post
recovery option i.e. function call which takes snap shots of that unpredictable
error pop-up by using snap shot Utility library. The snap shot will store in
the results directory.
We can
customize Recovery Scenarios as per
our requirement and error types. By default in this framework Recovery Scenario is disabled. We
explicitly enable it at the time of interaction of class libraries with the
application.
Keyword Driven Framework User Interface (Table 1)
![]() Results after execution
(Table 2)
![]() Implementation of Keyword Driven Framework
Description
of each column (Table 2)
1. TCID: This field
used for unique test case ID given by user.
2. STPID: It consists
of sub test case ID for each test case.
3. disable:
If ‘True’ parameter is passed for disable column particular test case will not
get
executed. 4. result: It show
pass/fail/skip status of executed test case.
5. keyword: It take
the parameter mapped with particular function.
6. comment:
It give the explanation about the
selected keyword(What functionality it will
Perform?)
7. output: It display
the error message occurred while executing test case with path of the
captured image.
8. Parm_001 to Parm_0010:
It take the parameters for function which is mapped with the
specified keyword.
9. IF Pass: It contain
the test case ID of subsequent test case to be execute if current test
case
is Pass.
10. IF Fail: It
contain the test case ID of subsequent test case to be execute if current test
case is Fail.
11. Time_Stamp: It
displays execution time of particular sub test case.
How the organization benefited from Keyword Driven
Framework?
The
Keyword Driven Framework has following benefits:
1.
The main advantage of this framework is the low cost for maintenance. If there
is change in any test case, only the Test Case File / Single Object Repository
needs to be updated and not the Driver Script and Startup script.
Example:
For a product based company, maintenance of test scripts is a major task. When the
company requirement was to shift to SUNJVM from MSJVM, it took ten days to make
all the changes in Scripts as well as individual Object Repositories, whereas
using the Keyword Driven Framework, it will require only one day to change the
single common Object Repository. Hence 90% cost saving was achieved.
2. Building of Test Scenarios and execution of the
Functional Test Suite was feasible without QTP and scripting knowledge.
3. This
framework is easy to understand when non-testers come in picture(for test case
design).
4.
Re-usability significantly increased over a period of time.
5.
Test Script development is possible without a functioning application.
6.
Test cases designed in this framework are less prone to human errors.
Future Scope
The organization
looks forth the execution of Business Process Testing in an unattended mode.
So
even in case of new joiners / high retention rate, less training will be
required
References
|
© Vyom Technosoft Pvt. Ltd. All Rights Reserved.