Framework Driven Test Automation Position Paper - Collabera
Framework Driven Test Automation Position Paper - Collabera
Framework Driven Test Automation Position Paper - Collabera
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Position</strong> <strong>Paper</strong><br />
<strong>Framework</strong> <strong>Driven</strong> <strong>Test</strong><br />
<strong>Automation</strong><br />
Realizing Cost Benefits through<br />
<strong>Framework</strong> <strong>Driven</strong> <strong>Test</strong> <strong>Automation</strong>
The old age testing maxim was “<strong>Automation</strong> Reaps Cost Benefits”. Thrilled with the prospects of<br />
achieving cost benefits and better quality, organizations adopted test automation methodologies<br />
and tools only to find themselves grappling with increased costs, higher timelines and lower tool<br />
utilization. Studies indicate that 63% of test automation projects fail due to multitude of factors –<br />
• Wrong choice and underutilization of testing tools<br />
• Lack of reusability of test cases and components,<br />
• Need for script development effort each time automation tool is used,<br />
and<br />
• Need for technical experts along with subject matter experts.<br />
The new age testing maxim is “Intelligent <strong>Automation</strong> Reaps Cost Benefits”. This gives rise to<br />
the question - How to do Intelligent <strong>Automation</strong>? The answer – <strong>Framework</strong> driven <strong>Test</strong><br />
<strong>Automation</strong>.<br />
<strong>Framework</strong> driven test automation enables<br />
80<br />
organizations to better their test automation<br />
70<br />
approach and realize cost benefits. Our<br />
experience in executing testing projects for<br />
fortune 500 clients across the globe have<br />
Percentage<br />
60<br />
50<br />
40<br />
30<br />
shown that framework driven test<br />
20<br />
automation can enable organizations realize<br />
close to 70% savings in effort across<br />
10<br />
0<br />
Savings in Effort<br />
Savings in Time<br />
design, development, scripting and<br />
execution stages of testing.<br />
Design & Development<br />
<strong>Test</strong> Suite Maintenance<br />
<strong>Test</strong> Case Scripting<br />
Overview<br />
The need for reducing manual effort and timelines in carrying out testing by deploying tool sets for<br />
applying test cases repetitively led to the adoption of test automation. However, the dynamic<br />
business landscape has led to a scenario wherein the need for reduced costs and better quality is<br />
all the more aggravating – leading to the creation of gaps in effective execution of testing.<br />
<strong>Framework</strong> based test automation aims to bridge these gaps through a set of assumptions,<br />
concepts, and practices that provide support for automated testing. Creating a base platform or<br />
support for automated testing, these frameworks enable test cases to be abstracted to logical<br />
levels, stored and executed in a consistent manner. Abstraction of test cases helps subject matter<br />
experts with minimal technical knowledge to use automation tools, reducing dependency on<br />
technical experts.<br />
Value. Accelerated.
Evolution<br />
<strong>Framework</strong> based test automation has evolved from capture replay approach (one of the earlier<br />
modes) to script based, data driven and keyword driven approaches.<br />
Manual<br />
<strong>Test</strong>ing<br />
Capture<br />
& Replay<br />
Script<br />
Based<br />
Data<br />
<strong>Driven</strong><br />
Keyword<br />
<strong>Driven</strong><br />
Hybrid<br />
Approach<br />
Capture & Replay: An approach wherein the various phases of a test case on execution are<br />
captured and maintained in a repository. The test case can then be replayed with changes in test<br />
data to obtain results. This approach suffers from the disadvantage of being time consuming and<br />
expensive when running complex test cases due to the inability to record such cases and<br />
maintain them.<br />
Script Based: A technique in which a technical expert generates scripts specific to the<br />
automation tool used along with the test data. This approach suffers from the disability of having<br />
to hard code test data into test scripts each time the test script gets executed.<br />
Data <strong>Driven</strong>: A technique where a single test script is used repeatedly with varying input and<br />
response data that comes from a predefined data set (data files such as data pools, ODBC<br />
sources, cvs files, Excel files, DAO objects, ADO objects etc). This approach suffers from the<br />
disability of taking more time to build, track and maintain test scripts.<br />
Keyword <strong>Driven</strong>: This framework requires the development of keywords, each keyword<br />
independent of the test automation tool used to execute them and the test script code that<br />
"drives" the application-under-test and the data. In this approach, discrete functional business<br />
events that make up any application are described using a short text description (Keyword) and<br />
associated parameter value pairs (arguments).<br />
Hybrid Approach: A framework that can be both keyword driven while also providing enhanced<br />
functionality for data driven scripts. This allows data driven scripts to take advantage of the<br />
powerful libraries and utilities that usually accompany a keyword driven architecture. On the other<br />
hand it allows the usage of scripts to perform some tasks that might be too difficult to reimplement<br />
in a pure keyword driven approach, or where the keyword driven capabilities are not<br />
yet in place.<br />
Value. Accelerated.
<strong>Collabera</strong> Approach<br />
<strong>Collabera</strong> enhances the test automation process through its proprietary framework – automate,<br />
a hybrid approach, which enables organizations to attain the multiple benefits of keyword and<br />
data driven approaches. This approach is a combination of all approaches described above,<br />
pulling from their strengths and trying to mitigate their weaknesses. On one hand this approach<br />
enables data driven scripts to be more compact and less prone to failure than they otherwise<br />
would have been; and on the other, they facilitate the gradual and manageable conversion of<br />
existing scripts to keyword driven equivalents when and where that appears desirable.<br />
This framework is “easy to use” and institutes of division of labor – enabling teams to involve<br />
members from diverse backgrounds and take advantage of their respective strengths. It<br />
encapsulates complexity of test automation scripting language from test specialists and business<br />
/ domain subject matter experts by allowing them to script test cases in simple English Language<br />
thus obviating dependency on technical experts.<br />
The table below provides a comparison of automate with other test automation approaches.<br />
Feature<br />
Capture<br />
Playback<br />
Keyword<br />
driven<br />
Automate<br />
Complexity of Initial Implementation<br />
Simplicity of use<br />
Division of Labour (Between SME/Domain/Technical<br />
Experts)<br />
Reuse of Common Business Functionalities<br />
Complexity of Maintenance<br />
Ease in Incorporating Changes<br />
Support for Iterative and Agile development model<br />
Provision of Exception / Error Handling<br />
Capability of generating English Language Documentation<br />
of Automated <strong>Test</strong> Cases<br />
Key benefits in using automate are<br />
• Reusability of automation scripts enabling client to realize better ROI<br />
over longer periods<br />
Value. Accelerated.
• Reusability of common business functionalities to achieve Reduction in<br />
Cost-to-Market and Time-to-Market along with Quality Improvements<br />
• Capability of generating English Language Documentation of<br />
Automated <strong>Test</strong> Cases<br />
Cost Benefit Using automate<br />
Automate based test automation takes a good deal of effort in the initial stages of set up and<br />
may indicate that the costs during initial stages are much more than that involved in traditional<br />
testing methods. However based on our experience in executing test automation based on<br />
automate for one of our key clients, the benefits were realized after 4 test cycles. The same<br />
has been represented in the graph below:<br />
25<br />
20<br />
Total Cost<br />
15<br />
10<br />
5<br />
Manual <strong>Test</strong> ing<br />
<strong>Framework</strong> based Aut omat ed <strong>Test</strong> ing<br />
0<br />
1 2 3 4 5 6 7 8 9 10 11 12<br />
<strong>Test</strong> Cycle<br />
* Refer Appendix 1 for detailed break down of cost structure.<br />
Appendix 1: Cost Benefits Using automate<br />
These figures have been computed based on our experience in carrying out test automation<br />
projects for clients across the globe. Actual results vary on project to project basis and depend on<br />
various factors like complexity of application, number of test cases, feasibility of application etc.<br />
Item Manual Automate<br />
Time Cost Time Cost<br />
Unit Cost $70 per day $70 per day<br />
Total no of test cases 632 632<br />
Time to design/automate<br />
test case<br />
4 per hour 30 per hour<br />
Value. Accelerated.
Time to design/automate<br />
all test cases<br />
Time to execute and<br />
analyze each test case<br />
and results<br />
Time to execute and<br />
analyze all test cases and<br />
results<br />
Total run through the<br />
code release for one<br />
cycle<br />
158 hrs $1610 22 hrs<br />
4 per hour or<br />
32 per day<br />
158 hrs $ 1610<br />
30 per hour or<br />
240 per day<br />
(depending upon<br />
the speed of the<br />
processor and<br />
the speed of the<br />
application)<br />
3 days of<br />
execution+7 days<br />
of manual +2<br />
days script<br />
rework=12 days<br />
$3390<br />
$ 840<br />
$ 1610 $4230<br />
Manual Automate Tool Cost Total<br />
Time to Design and Execute 1610 3390 1000 4390<br />
Subsequent cycle execution times 1610 840<br />
Cycle Manual (in 1000's) Automate (in 1000's)<br />
1 1.61 4.39<br />
2 3.22 5.23<br />
3 4.83 6.07<br />
4 6.44 6.91<br />
5 8.05 7.75<br />
6 9.66 8.59<br />
7 11.27 9.43<br />
8 12.88 10.27<br />
9 14.49 11.11<br />
10 16.1 11.95<br />
11 17.71 12.79<br />
12 19.32 13.63<br />
Total 125.58 108.12<br />
Assumptions and computational values:<br />
• Daily builds and test runs (5 times a week)<br />
• Manual tests take 5 days to design, 2 hours to run<br />
• Only half the manual tests would be run on any given day (1 hour) with<br />
the other half run the following day<br />
• Automated tests take 15 days to design and implement, automatically<br />
run (zero cost)<br />
Value. Accelerated.
• <strong>Automation</strong> is done with batch scripts and integrated into the build<br />
process, requiring $1,000 in added hardware, with a useful life of 3<br />
years<br />
• Automated tests need to be maintained every 25 runs, one day of work<br />
required<br />
• People cost $100,000 per year = $400 per day = $50 per hour<br />
About <strong>Collabera</strong><br />
<strong>Collabera</strong> is one of the fastest growing end-to-end information technology services and solutions<br />
firms worldwide. We work with leading Global 2000 firms from the Financial Services,<br />
Manufacturing & Retail, Technology, Communications & Media domains. <strong>Collabera</strong> delivers<br />
highly responsive and innovative solutions that bridge our client's Execution Gaps through our<br />
proprietary methodologies - Momentum workshops, ABS (Asset Based Services) and global<br />
delivery model - helping them experience accelerated value.<br />
With revenues of over USD 300 million, <strong>Collabera</strong> employs over 4000 professionals across 22<br />
locations and seven world-class delivery centers in the US, Europe, India and China regions. Our<br />
Global Delivery model leverages a best-in-class Quality system (including SEI CMMI Level 5 and<br />
ISO 27001 security certifications) to deliver a full portfolio of services that include Application<br />
Development and Management, Independent <strong>Test</strong>ing, Outsourced Product Development,<br />
Enterprise Software Solutions, Business Intelligence & Datawarehousing.<br />
Value. Accelerated.
www.collabera.com<br />
solutionsinfo@collabera.com<br />
Value. Accelerated.