In-Process Automation - HCL Technologies ?· IN-PROCESS AUTOMATION – CASE STUDY 8 ... HCL has developed…

Download In-Process Automation - HCL Technologies ?· IN-PROCESS AUTOMATION – CASE STUDY 8 ... HCL has developed…

Post on 05-Jun-2018

212 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • WHITEPAPER DEcEmbER 2014

    In-Process Automation

    www.hcltech.com

    Author: Sajitha RadhakrishnanSL CORE APPS-TESTING-TESTING-FT-BFSI

    HCL Technologies Ltd., Bangalore, India

    Sajitha.R@hcl.com

    businessassurance& testing

  • IN-PROCESS AUTOMATION | DECEMbER 2014

    2014, HcL TEcHNOLOGIES. REPRODUcTION PROHIbITED. THIS DOcUmENT IS PROTEcTED UNDER cOPYRIGHT bY THE AUTHOR, ALL RIGHTS RESERVED. 2

    TABLE OF CONTENTS

    INTRODUCTION 3

    IN-PROCESS AUTOMATION THE CONCEPT 4STANDARD REGRESSION AUTOMATION APPROACH

    IN-PROCESS AUTOMATION APPROACH

    IN-PROCESS AUTOMATION LIFE CYCLE

    IN-PROCESS AUTOMATION ADVANTAGES

    CHALLENGES FACED

    IN-PROCESS AUTOMATION CRITICAL SUCCESS FACTORS

    HCLS IN-PROCESS AUTOMATION TOOL 7

    IN-PROCESS AUTOMATION CASE STUDY 8

    CONCLUSION 9

    ACKNOWLEDGEMENT 9

    BIOGRAPHY 9

    ABOUT HCL 10

  • IN-PROCESS AUTOMATION | DECEMbER 2014

    2014, HcL TEcHNOLOGIES. REPRODUcTION PROHIbITED. THIS DOcUmENT IS PROTEcTED UNDER cOPYRIGHT bY THE AUTHOR, ALL RIGHTS RESERVED. 3

    INTRODUCTIONThe World Quality Report, published yearly by Capgemini, Sogeti and HP, is recognized as the IT industrys largest research study. This report surveys the current quality and testing practices used across the globe as well as the emerging trends that may affect the future of testing.

    Some of the key findings of the World Quality Report 2014-15 are:

    y Quality Assurance functions are becoming structurally more mature number of organizations with a fully-functional Testing Center Of Excellence increased from 4% in 2011 to 26% in 2014

    y Organizations continue to increase the proportion of their IT budgets for testing from 18% in 2012 to 26% in 2014. This is expected to rise to 29% by 2017

    y The share of testing budget for transformational projects was 41% in 2012, which increased to 46% in 2013

    y QA teams are still engaged too late in the application development life cycle, which contributes to the increase of testings share within IT budgets to manage operational and quality inefficiencies

    All the findings from the report point to the fact that while testing as a function is growing, the IT industry is concentrating on improving the time to market and reducing the QA budget. The market is increased test automation and automating early in the application development process by using testing services.

    The report also mentions that 40% of the global QA budget was estimated to be spent on functional testing, where only 20% was spent on regression testing and the remaining 20% on other testing activities. In traditional automation projects, the testing team has focused on automating only the regression tests. With the IT industry focusing on cost optimization, it has become imperative to focus on functional test automation. Even if we succeed to achieve 20% reduction in functional test execution effort, we could save millions of dollars.

    The In-Process Automation approach proposes a shift left paradigm to the Software Development Lifecycle by automating the functional test cases instead of regression tests. This helps target 60% of our testing spend, rather than the traditional 20%. The automation development process runs parallel to the application development phase and the scripts get executed during the first execution cycle in the System Integration Testing (SIT) phase to reduce the testing cycle time.

  • IN-PROCESS AUTOMATION | DECEMbER 2014

    2014, HcL TEcHNOLOGIES. REPRODUcTION PROHIbITED. THIS DOcUmENT IS PROTEcTED UNDER cOPYRIGHT bY THE AUTHOR, ALL RIGHTS RESERVED. 4

    IN-PROCESS AUTOMATION THE CONCEPTTo understand the In-Process Automation approach better, let us look at the standard regression automation approach.

    STANDARD REGRESSION AUTOMATION APPROACH

    UAT Release & Maintenance Analysis Coding CIT SIT UATDesign

    1 2 1 2 1 2 3 4 5 6 1 2 31 2 31 2 1 2WEEK 1 2

    Previous Release Current Release

    Test case preparation from manual team

    1

    Identification of test cases for Regression testing from the manual test cases

    2

    Scripting of regression Scenarios for previous release

    3

    Tweaking should be done for the scripts before execution if there are any changes from the previous build to the current build

    Execution of Automation Regression pack

    4

    Cycle should repeat for CIT, SIT and UAT

    The above diagram describes the traditional automation approach of automating the regression test cases.

    Once the functional testing of an application is completed and signed off for a release, the manual team identifies the test cases to be added to the regression suite from the functional test suite. These test cases are then handed over to the automation team that conducts the feasibility and automates the regression suite during the development phase of the next release. This automation regression pack is then used for regression testing in the subsequent testing phases of the release. The automation is termed Lagging Release Automation. Now let us see how the In-Process Automation approach is implemented.

    IN-PROCESS AUTOMATION APPROACH

    Analysis Design Coding CIT SIT UAT Release & Maintenance

    1 2 1 2 1 2 3 4 5 6 1 2 3 1 2 3 1 2 1 2

    Identification of functionalities for automation

    Framework definition

    Feasibility study on Application

    Scripting of 1st module

    Scripting for nth module

    Dry run of (n-1)thmodule Scripts

    Execution of entire Automation pack

    Execution of entire Automation pack

    Execution of entire Automation pack

    Execution of Automation Regression pack

    1

    2

    3

    4

    4

    5

    6 7

    8

    9

    Entry criteria Suspension criteria Exit criteria

    WEEK

    Cycle should repeat for all the modules

    In this approach, the automation development life cycle runs parallel to the application development life cycle. During the analysis and the design phase, the functionalities that need to be automated are identified and the automation framework is defined

  • IN-PROCESS AUTOMATION | DECEMbER 2014

    2014, HcL TEcHNOLOGIES. REPRODUcTION PROHIbITED. THIS DOcUmENT IS PROTEcTED UNDER cOPYRIGHT bY THE AUTHOR, ALL RIGHTS RESERVED. 5

    and developed. If an existing framework is available, any necessary modifications are also completed. Once the application goes into the coding phase, the feasibility study of the application is conducted and the scripting begins. It continues throughout the coding phase and once the application reaches the Component Integration Testing phase, the first time execution of the automation pack is conducted. The necessary modifications are done with respect to the application and then the automation pack utilized for the subsequent phases of the life cycle. The same automation pack can then be utilized as the regression pack, providing maximum testing during every application release.

    IN-PROCESS AUTOMATION LIFE CYCLE

    To make this approach a success, a set of activities recommended to be performed during the course of application development life cycle. These are:

    1. Understanding the business flow during the requirements phasea. Static testing and analysis of the Business Requirements Document (BRD),

    Functional Specifications Document (FSD), and technical specifications

    b. Understanding the functionality and deciding on the modules to be automated

    c. Creating a common test template to be used for automation

    Pre-conditions for the above mentioned activities to be conducted during this phase are:

    a. Signed-off technical and functional specification documents

    2. Develop/ modify the automation framework during the design phasea. Analyzing the system design

    b. Creating the test scenarios

    c. Designing the framework

    d. Identifying the functional flow and object details

    Pre-conditions:

    a. Module prioritization information

    b. Design documents and the application flow with the object names

    c. An application prototype if available

    3. Develop the automation scripts during the application development phasea. Use of programming approaches like descriptive programming to complete the

    development of automation framework

    b. Automation scripting with the object details and design flow available from the earlier phase

    Pre-conditions:

    a. Stable test environment

    b. Software for the agreed modules

    c. Application queue and database details, if applicable

  • IN-PROCESS AUTOMATION | DECEMbER 2014

    2014, HcL TEcHNOLOGIES. REPRODUcTION PROHIbITED. THIS DOcUmENT IS PROTEcTED UNDER cOPYRIGHT bY THE AUTHOR, ALL RIGHTS RESERVED. 6

    4. Perform a dry run of the automated scripts during the unit testing/ Component Integration Testing (CIT) phase.a. Executing the script on developed modules, as and when the automation

    scripting completes

    b. Preparing the test data for the modules under development

    Pre-conditions:

    a. Stable test environment

    5. Perform automated functional testing during the SIT phasea. Reworking on the framework and the test scripts for any gaps identified in

    correspondence to the application under test

    b. Complete the functional automation testing and share the results

    c. Analyze and decide on the automation scripts that can be used by User Acceptance Testing (UAT) team

    Pre-conditions:

    a. Stable test environment

    b. Faster defect turnaround

    6. Maintenance and execution of the automation scripts in the subsequent phases and across releasesa. Select the tests to be reused for regression

    b. Perform the regression tests for subsequent releases

Recommended

View more >