Tips For Creating Good Test Automation Approach - Presentation Transcript
Tips for Creating Good Test Automation Approach
Development of an effective test automation framework is a complex process involving many stages. Every
stage poses different set of challenges, which need to be scientifically addressed. A sound framework can be
created on a solid foundation of a good test automation approach. Few guidelines for creating the same are
being described below.
The process begins with formulating a sound strategy for automation beginning with the requirement phase &
extending till the deployment phase. This process is kick-started by understanding the set of business rules and
various conditions specified by the client. Such business rules and conditions bearing operational similarities are
grouped together in the form of test cases or scenarios.
Stages of building Test Automation Approach are as under:
Stage-1: Capturing the requirement from the client:
Includes onsite transfer of knowledge like understanding of all transactions including customized transactions
etc.
Stage-2: Understanding and analyzing the requirements: This may be done at the client end as well.
Stage-3: Clubbing the requirement into groups of test cases:
According to the flow, grouping of all the transactions in the form of different scenarios. This follows identification
of common functionalities and clubbing them together in the form of different test cases.
Stage-4: Preparation of detailed design for automation:
Design for automation of scripts with special emphasis on the following
a) Use of common coding structure in all scripts.
b) Use of consistent / common coding conventions.
c) Reusability must be the key in coding.
d) Extensive use of object repository
e) Extensive use of error and exception handling functions
f ) Extensive use of data table objects.
g) Extensive use of environment variables
Stage-5: Creation of scripts according to the design
Stage-6: Reviewing the offshore scripts if any
Stage-7: Final delivery to the client
Practical Steps to Design Test Automation Approach:
Step-1: Identification of Test Cases that are needed to be automated
Step-2: Identification of common functionalities & grouping them together
Step-3: Identifying / defining the standards for coding, naming conventions and templates
Step-4: Creation of library of re-usable objects
# Object Repositories, Tool & Application Settings etc
# Library for handling of Data Tables, Files, Strings & Dates etc.
# Login / Logout, code related to common functionality etc.
# Log Reporting, messaging, Error handling etc
Step-5: Development of script with record & play back Tool
Step-6: Verification & Validation of final script & then delivery.
Ten useful guidelines to identify Test Cases best suited for Automation:
1) Identify the tests, which call for extensive involvement of the testing engineers or the ones that would be spar-
ingly run. These tests should be certainly dropped from the list of tests for automation.
2) Identify the application paths with high frequency of use during full-scale production run of the application. Au-
tomated testing shall be best for evaluating the performance of such application paths. These can include activi-
ties with higher volume with larger probability of failure of the software such as billing / invoicing or other cus-
tomer records etc.
3) Identify the special processes having critical importance for the business like processing of sales order etc.
Such strategically important activities must be identified for automated testing.
4) Identify the events requiring repetitive testing, which would be ideal for automated testing.
5) Identify the applications having longer life span during production, since automation of such applications shall
provide maximum benefits.
6) Try to avoid the dynamic screens. Although we can automate them but the script tends to become too com-
plex.
7) Try to avoid screens involving dynamic creation of objects.
8) Try to avoid business scenarios involving use of complex hardware.
9) Try to avoid scenarios, which call for complex coding for automation. Our endeavor should be to have less
complex script, which would eventually be easily maintainable.
10) Try to prove the scenario with tables having provision of identifying every row by a unique number. Script
complexity should be reduced while handling enterprise wide applications like price list tables etc. A complex
script tends to take more time for execution especially when the table contains large number of rows for picking
up the data.
Article By:
http://www.softwaretestinggenius.com
A Storehouse of Complete Knowledge on Software Testing & QA under one Roof
0 comments
Post a comment