PERSPECTIVE. End-to-end test automation A behaviordriven and tool-agnostic approach. Abstract

Similar documents
DELIVERING AGILE QUALITY ASSURANCE THROUGH EXTREME AUTOMATION

Final Paper/Best Practice/Tutorial Advantages OF BDD Testing

ENABLING QA THROUGH ANAPLAN MODEL TESTING

VIEW POINT. Choosing the right automation tool and framework is critical to project success. Harsh Bajaj, Technical Test Lead ECSIVS, Infosys

Extreme automation of today s technological marvel - connected cars

BEHAVIOR DRIVEN DEVELOPMENT BDD GUIDE TO AGILE PRACTICES. Director, Strategic Solutions

HP APPs v.12 Solutions for Dev-Ops

Intelligent test automation

WHITE PAPER. Leveraging Database Virtualization for Test Data Management. Abstract. Vikas Dewangan, Senior Technology Architect, Infosys

WEB-APIs DRIVING DIGITAL INNOVATION

Test Automation Strategies in Continuous Delivery. Nandan Shinde Test Automation Architect (Tech CoE) Cognizant Technology Solutions

WHITE PAPER. The Hybrid Cloud and Microsoft Azure

The #1 Enterprise Testing Platform for Jira

Building a Customized Test Automation Framework Using Open Source Tools

Run the business. Not the risks.

Shift Left Testing: are you ready? Live Webinar, Sept 19

WHITE PAPER. Moving Fragmented Test Data Management Towards a Centralized Approach. Abstract

Cisco Start. IT solutions designed to propel your business

The Need for a Holistic Automation Solution to Overcome the Pitfalls in Test Automation

Smart Data Center Solutions

ICAgile Learning Roadmap Agile Testing Track

Accelerate Your Enterprise Private Cloud Initiative

WHITE PAPER. Test data management in software testing life cycle-business need and benefits in functional, performance, and automation testing

Achieving Right Automation Balance in Agile Projects

PERSPECTIVE. Mobilizing SAP Enterprise Applications. Abstract. Suresh Santhana & Anoop Kumar

About Us. Services CONSULTING OUTSOURCING TRAINING MENTORING STAFF AUGMENTATION 9/9/2016

ORACLE SERVICES FOR APPLICATION MIGRATIONS TO ORACLE HARDWARE INFRASTRUCTURES

CAPABILITY. Managed testing services. Strong test managers experienced in working with business and technology stakeholders

Accelerating Digital Transformation

MOBILE APPLICATION TESTING CHALLENGES

Struggling to Integrate Selenium into Your Ice Age Test Management Tools?

Agile Behaviour Driven Development (BDD) and Integrated Testing with the Cucumber Framework. Melbourne ANZTB SIGIST, 15 th June 2011

Getting Hybrid IT Right. A Softchoice Guide to Hybrid Cloud Adoption

We re redefining Software Quality

AMAR PURI. au.linkedin.com/in/iamarpuri 2/40 station Street, Burwood 3125 Victoria, Australia Mobile:

How Manual Testers can execute Test Automation. White Papers. Muthiah Director of Testing. Expedux on How Manual Testers

POWERING DIGITAL MARKETING WITH SPEED AND REACH

Seven Deadly Sins of Agile Testing

Comprehensive Test Management with Parametrization Manual and Automated Test Execution Test Case Library Management & Re-use Requirements Test

HP ALM Overview. Accelerating Innovation, Industrialising Quality. Oren Ziv, Product Manager, QC/ALM

Now you can Microsoft Visual Studio 2010 with MSDN

DOWNLOAD OR READ : TEST AUTOMATION USING HP UNIFIED FUNCTIONAL TESTING EXPLORE LATEST VERSION OF QTP PDF EBOOK EPUB MOBI

F5 Reference Architecture for Cisco ACI

PREPARE FOR TAKE OFF. Accelerate your organisation s journey to the Cloud.

Accelerating the Business Value of Virtualization

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method

WHITE PAPER. Development Approach for Customized Testing Tools - Selecting Testing Tools Efficiently. Abstract

How to Build an Appium Continuous Testing Pipeline

Modernizing Healthcare IT for the Data-driven Cognitive Era Storage and Software-Defined Infrastructure

VMware Cloud Operations Management Technology Consulting Services

Reshaping the future, shifting business and operating models

J2EE DIAGNOSING J2EE PERFORMANCE PROBLEMS THROUGHOUT THE APPLICATION LIFECYCLE

Reducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping

Turbo boost your digital app test automation with Jenkins

Introduction. Delivering Management as Agile as the Cloud: Enabling New Architectures with CA Technologies Virtual Network Assurance Solution

White Paper. Achieve Next Level of Automation with Robotic Test Automation

SYMANTEC: SECURITY ADVISORY SERVICES. Symantec Security Advisory Services The World Leader in Information Security

Service Delivery Platform

Hoping my knowledge, skills and experience could be used by you and your company I appreciate in advance your time and consideration.

Why Converged Infrastructure?

QA & Test Management

Accelerates Timelines for Development and Deployment of Coatings for Consumer Products.

Symantec Data Center Transformation

BUILDING the VIRtUAL enterprise

Testing Tools to Support Agile Software Delivery. The Critical Role of Automated Functional Testing in Enterprise Environments

Copyright 2013 by AGILOD Consulting, LLC. All Rights Reserved. Test Automation. Done The AGILOD Way

Integrity 10. Curriculum Guide

Testing in the Agile World

DevOps and Continuous Delivery USE CASE

HPE IT Operations Management (ITOM) Thought Leadership Series

Agile Test Automation ICAgile

De-dupe: It s not a question of if, rather where and when! What to Look for and What to Avoid

IBM WebSphere Message Broker for z/os V6.1 delivers the enterprise service bus built for connectivity and transformation

SYSPRO s Fluid Interface Design

HP Fortify Software Security Center

PERSPECTIVE. Best Practices in Automation Testing of Mobile Applications. Abstract

Data Virtualization Implementation Methodology and Best Practices

WHITE PAPER. OAuth A new era in Identity Management and its Applications. Abstract

Mobile Automation Testing using Appium

NVIDIA DGX SYSTEMS PURPOSE-BUILT FOR AI

Predictive Insight, Automation and Expertise Drive Added Value for Managed Services

MODERNIZE INFRASTRUCTURE

WHITE PAPER. M-Health: Challenges, benefits, and keys to successful implementation. Kaushal Modi and Radha Baran Mohanty

THE JOURNEY OVERVIEW THREE PHASES TO A SUCCESSFUL MIGRATION ADOPTION ACCENTURE IS 80% IN THE CLOUD

Test Automation. Fundamentals. Mikó Szilárd

A POLYCOM SOLUTION BROCHURE Polycom Open Telepresence Experience

Wipro s Endur Test Automation Framework (W-ETAF) Reduces time and effort for the implementation and maintenance of an automated test solution.

Networking for a smarter data center: Getting it right

SD-WAN. Bringing Scale, Agility and Robustness to Enterprise Networks

Get your business Skype d up. Lessons learned from Skype for Business adoption

2018 Report The State of Securing Cloud Workloads

RED HAT ENTERPRISE LINUX. STANDARDIZE & SAVE.

Strengthen hybrid cloud operations and controls with Liquid Sky. Singtel Business

The main website for Henrico County, henrico.us, received a complete visual and structural

Hybrid WAN Operations: Extend Network Monitoring Across SD-WAN and Legacy WAN Infrastructure

Dell Storage Point of View: Optimize your data everywhere

Next Generation Privilege Identity Management

Leading the Evolution. Micro focus SilkTest. The Quality Solution for Robust Functional Test Automation

What to Look for in a Partner for Software-Defined Data Center (SDDC)

Quality Engineering in DevOps world a Strategic Enabler

Transcription:

PERSPECTIVE End-to-end test automation A behaviordriven and tool-agnostic approach Anand Avinash Tambey Product Technical Architect, Infosys Abstract In today s fast changing world, IT is under constant pressure to deliver new applications faster and cheaper. The expectation from the quality assurance (QA) organization is to make sure that all the applications are tuned to deliver to every rising user expectation across devices, locations, and typically, at no additional cost. And with an exponential growth in the diversity and number of end users in almost all sectors, requirements are fairly fluctuating and demanding too.

This fast-paced software engineering advancement is also posing challenges to software engineers to build an ecosystem that enables rapid prototyping and design, agile development and testing, and fully automated deployment. For the QA community, this translates to a need to maximize automation across all stages of the software engineering and development life cycle and more importantly, do it in an integrated fashion. Consequently, `extreme automation is the new mantra for success. And there is more. According to the 2014 State of DevOps report, high-performing organizations are still deploying code 30 times more frequently, with 50 percent fewer failures than their lower-performing counterparts. High IT performance leads to strong business performance, helping boost productivity, profitability, and market share. The report counts automated testing as one of the top practices correlated with reducing the lead time for changes. However, automated testing puts together another set of challenges. The latest technologies stack advocates multiple choices of test automation tools, platformspecific add-ins, and scripting languages. There is no inherent support available for generic, tool-agnostic, and scriptless approach with easy migration from one tool to another. Therefore, a significant investment in training, building expertise, and script development is required to utilize these tools effectively. The cost and associated challenges inadvertently affect the time-to-market, profitability, and productivity although it also creates an opportunity to resolve the issues using a combination of an innovative tool-agnostic approach and latest industry practices such as behavior-driven development (BDD) and behavioral-driven test (BDT). Business challenges A persistent need of businesses is to reduce the time between development and deployment. QA needs to evolve and transform to facilitate this. And this transformation requires a paradigm shift from conventional QA in terms of automation achieved in each life cycle stage and across multiple layers of architecture. Technical complexity The technology and platform stack is not limited to traditional desktop and the web for current application portfolios. It extends to multiple OS (platforms), mobile devices, and the newest responsive web applications. Infrastructure, licensing, and training costs To test diverse applications, multiple test automation tools need to be procured (license cost), testing environment needs How to face these challenges Challenges Technical complexity Infrastructure, licensing, and training costs Late involvement of users Late involvement of testers to be set up (infrastructure), and the technical skills of the team need to be brought to speed with training and selflearning / experimentation (efforts). Late involvement of users The end user is not involved in the development process until acceptance testing and is totally unaware of whether the implemented system meets her requirements. There is no direct traceability between the requirements and implemented system features. Late involvement of testers Testing and automation also need to start much earlier in the life cycle (Shift- Left) with agility achieved through the amalgamation of technical and domain skills of the team, as well as the end user. Approaches De-skilling Using open source stack Using behavior-driven techniques Utilizing the testers and users effectively Let us discuss these approaches in detail to face the above challenges.

Using open-source stack To reduce the cost of commercial tool license and infrastructure, utilize opensource tools and platforms. De-skilling Using easy modeling of requirements and system behaviors, accelerated framework, and automated script generators, reduces the learning curve and the dependency on expert technical skills. Using behavior-driven techniques Behavioral-driven development and testing (BDD and BDT) is a way to reduce the gap between the end user and the actual software being built. It is also called `specification by example. It uses natural language to describe the `desired behavior of the system in a common notation that can be understood by domain experts, developers, testers, and the client alike, improving communication. It is a refinement of practices such as test-driven development (TDD) and acceptance test-driven development (ATDD). The idea behind this approach is to describe the behaviors of the system being built and tested. The main advantage is that the tests verifying the behaviors reflect the actual business requirements / user stories and generate the live documentation of the requirements, that is, successful stories and features as test results. Therefore, the test results generated can be read and understood by a non-technical person, such as a project sponsor, a domain expert, or a business analyst, and the tests can be validated. Utilizing testers and users effectively Our accelerated automation approach provides a simple modeling interface for a scriptless experience and thereby utilizes non-technical staff effectively. It introduces the `outside-in software development methodology along with BDT, which has changed the tester s role dramatically in recent years, and bridges the communication gap between business and technology. It focuses on implementing and verifying only those behaviors that contribute most directly to the business outcomes. Solution approach Our solution approach is threefold, to resolve challenges in a holistic way. It applies a behavior-driven testing approach with a tool-agnostic automation framework, while following an integrated test life cycle vision. It ensures that business users and analysts are involved. It provides the flexibility of using any tool chosen and helps save cost and effort. It also provides a simple migration path to switch between tools and platforms, if such a case arisies. With an integrated test life cycle approach, it ensures seamless communication between multiple stakeholders and leverages industrystandard tools.

Passed Failed Skipped Pending Passed Feature Scenarios Steps Passed Failed Skipped Pending Duration Status Account holder withdraws cash project 2 8 40 40 0 0 0 113 ms passed Account holder withdraws More cash project 2 1 9 5 1 3 0 4 ms failed Account holder withdraws cash 8 40 40 0 0 0 112 ms passed Account holder withdraws more cash 1 9 5 1 3 0 4 ms failed 4 18 98 90 2 6 0 233ms Totals Cucumber-JVM Jenkins report plugin - 06-07-2012 22:31:55 Failed Behavior-driven test (BDT) To facilitate real-time traceability of user stories / requirements and to aid live documentation, we have implemented a BDT approach across multiple Infosys projects as described below. This approach acted as a single point of continuous interaction between the tester and the business users. The user story is divided into various scenarios by the testers into a feature file. These scenarios are written using Gherkin language. These scenarios include the business situation, the pre-ions, the data to be used, and the acceptance criteria. The end user signs off the features / scenarios. This provides the user control to execute and validate the scenarios based on the data as per the user need and bring up feature reports / dashboard. The underlying technical implementation is abstracted from the business user. Tester creates the underlying test scripts for the scenarios which could be a business layer test script, service test script, or a UI automated test script. The tool then converts the scenarios to `step definitions, which act as the binder between the test scripts and the scenarios. This ensures that a single point / interface is used to execute any type of tests. End user User story Tester Feature files Step definition Shift-Left Early test automation from day one Zero distance with user User aware of feature success / failures early Cucumber Reports Feature Overview for Build: 15 The following graph shows passing and falling statistics for features in this build: Back to Jenkins Tag Overview 11% UI Testing framework (BDT) Steps 92% Feature Statistics Scenarios 89% Reports in user's language Finally, it introduces automation in early stages to realize the benefit of Shift-Left.

Tool-agnostic approach To remove dependencies on technical skills, tools, and platforms, our solution proposes modeling of system behaviors using generic English-like language via an intuitive user interface. This model would be agnostic to any specific tool or UI platform and reusable. This model will be translated into a widely acknowledged format, XML, and will act as an input to generate automation scripts for specific tools and platforms. Finally, it would integrate with a continuous integration platform to achieve an end-toend automation of build-test-deploy cycle. Tool- / platform-agnostic solution (BDD release) BDD modeling UI Scriptless, tool- / platform-agnostic implementation Business analyst / end user QTP Tester User story Selenium Execution Script generator Features SAHI Fields and step definitions Protractor AUT Build Test Deploy Continuous integration

Integrated test life cycle The role of the traditional tester and end users is changing in the era of DevOps and Shift-Left. The integrated-solution approach enables a larger stakeholder base to contribute towards the quality of the system under development. It also ensures the satisfaction of stakeholders via early validation and early feedback of system progress while using the industrystandard toolsets seamlessly. Test Life Cycle Management View Requirement analysis Test design Test execution Test reporting BA Automation expert BA Tester Tester QA manager / end user BDD & UML modeling tool Tool-agnostic, platform-agnostic automation accelerator BDD & UML modeling tool Features and metrics reports Generates requirements and features Enhances automation libraries Designs business processes Generates automation scripts Executes automation scripts Generates test reports Integration With Popular Tools HP ALM/QC IBM RQM JIRA Jenkins Others Benefits Reduced time-to-market Shift-Left, early automation, and early life cycle validation Single-click generation and execution of automated scripts Reduced cost 40 60 percent reduction in effort for automated test case generation over manual testing Easy maintenance of requirements, stories, features, and the automated test suite No additional cost involved in building integration components for test management tools (HP-ALM) The agnostic approach works for a broad range of applications irrespective of tools, technology, and platform Improved quality Enhanced business user participation and satisfaction due to the live documentation of features and user stories, available at fingertips Developer, tester, and client collaboration possible due to a common language High defect detection rates (95 99 percent) due to high test coverage Detailed error reporting reduces defect reporting effort considerably

Conclusion Our solution approach is the first step towards reducing the complexity of test automation and making it more useful for the end user by providing early and continuous feedback to the incremental system development. Moreover, it advances automation at every level to achieve rapid development and faster time-to-market objectives. References https://puppetlabs.com/sites/default/files/2014-state-of-devops-report.pdf http://www.ibm.com/developerworks/library/a-automating-ria/ http://guide.agilealliance.org/guide/bdd.html http://www.infosysblogs.com/testing-services/2015/08/extreme_automation_ the_need_fo.html With the advent of multiple technologies and high-end devices knocking at the door, using a tool- and platform-agnostic approach will increase overall productivity while reducing the cost of ownership.

For more information, contact askus@infosys.com 2017 Infosys Limited, Bengaluru, India. All Rights Reserved. Infosys believes the information in this document is accurate as of its publication date; such information is subject to change without notice. Infosys acknowledges the proprietary rights of other companies to the trademarks, product names and such other intellectual property rights mentioned in this document. Except as expressly permitted, neither this documentation nor any part of it may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, printing, photocopying, recording or otherwise, without the prior permission of Infosys Limited and/ or any named intellectual property rights holders under this document. Infosys.com NYSE: INFY Stay Connected