13.11.2014 Views

Framework Driven Test Automation Position Paper - Collabera

Framework Driven Test Automation Position Paper - Collabera

Framework Driven Test Automation Position Paper - Collabera

SHOW MORE
SHOW LESS

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.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!