Automation 2.0 Taking test automation beyond regression testing

Similar documents
Global Delivery Centre:

The Importance of Continuous Integration for Quality Assurance Teams

Smarter Balanced Assessment Consortium. Recommendation

Quality Assurance - Karthik

Agile Development and Testing Practices highlighted by the case studies as being particularly valuable from a software quality perspective

SmartBear Software Pragmatic Agile Development (PAD) Conceptual Framework

Implementing Continuous Integration Testing Prepared by:

Benefits of Test Automation for Agile Testing

Creating Business Value with Mature QA Practices

Test Automation Process

How Silk Central brings flexibility to agile development

ecommerce and Retail Rainforest QA enables ecommerce companies to test highly visual user interfaces and customer experience and flow.

Test What You ve Built

Brochure content creation -Outsourced!

Contents. -Testing as a Services - TaaS 4. -Staffing Strategies 4. -Testing as a Managed Services - TaaMS 5. -Services 6.

Business white paper. Best practices for implementing automated functional testing solutions

Accelerating Time to Market with Agile Testing

Adopting Agile Testing

a new generation software test automation framework - CIVIM

Sandesh Prasanna Kumar

Client Overview. Engagement Situation. Key Requirements

Table of contents. Enterprise Resource Planning (ERP) functional testing best practices: Ten steps to ERP systems reliability

Test Automation: A Project Management Perspective

What is Application Lifecycle Management? At lower costs Get a 30% return on investment guaranteed and save 15% on development costs

Reduce QA Cost by Improving Productivity & Test Optimization

Use service virtualization to remove testing bottlenecks

Measuring ROI of Agile Transformation

Visionet IT Modernization Empowering Change

Codeless Test Automation for Web Apps

Software Continuous Integration & Delivery

WHITE PAPER. Getting started with Continuous Integration in software development. - Amruta Kumbhar, Madhavi Shailaja & Ravi Shankar Anupindi

the first thing that comes to mind when you think about unit testing? If you re a Java developer, it s probably JUnit, since the

Mobile Testing Automation

Bridging the Gap Between Acceptance Criteria and Definition of Done

FEARLESS. Capabilities

Best Overall Use of Technology. Jaspersoft

Best Practices For Assigning First Call Responsibilities For Healthcare Networking Issues

Higher Focus on Quality. Pressure on Testing Budgets. ? Short Release Cycles. Your key to Effortless Automation. OpKey TM

QEx Whitepaper. Automation Testing Pillar: Selenium. Naveen Saxena. AuthOr:

Modern SOA Testing. A Practitioners Guide to. July 2011

Know the Difference. Unified Functional Testing (UFT) and Lean Functional Testing (LeanFT) from HP

AB Suite in the Application Lifecycle

Often Clients tend to use in-house functional resources for their testing and validation processes ending up with issues such as

Testing. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies. CHAPTER AUTHORS Michael Atmadja Zhang Shuai Richard

Proven Testing Techniques in Large Data Warehousing Projects

Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc.

TesT AuTomATion Best Practices

Transforming Software Quality Assurance &Testing

Testadon Certification

Leveraging Agile and CMMI for better Business Benefits Presented at HYDSPIN Mid-year Conference Jun-2014

International Software Test Institute

+ MOBILE APPLICATION SOME OF OUR MOBILE + APPLICATION TESTING CLIENTS

Delivering Quality Software with Continuous Integration

TEST MANAGEMENT SOLUTION Buyer s Guide WHITEPAPER. Real-Time Test Management

Service Virtualization:

Business Process Validation: What it is, how to do it, and how to automate it

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.

Continuous Delivery. Alejandro Ruiz

Aspire's Approach to Test Automation

Step 2 Go2Group Automation Self Assessment

Agile QA Process. Anand Bagmar Version 1.

Adaptive Automated GUI Testing Producing Test Frameworks to Withstand Change

Business Rules-Based Test Automation: A novel approach for accelerated testing

The Customer. Manual and Automation Testing for a leading Enterprise Information Management (EIM) Solution provider. Business Challenges

From Traditional Functional Testing to Enabling Continuous Quality in Mobile App Development

Copyrighted , Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh),

Work Experience HP ALM (Quality Center), Bugzilla

Continuous Integration

Test Automation Framework

Points of Defect Creation

Metrics in Software Test Planning and Test Design Processes


STeP-IN SUMMIT International Conference On Software Testing

Test Plan Evaluation Model

Automation can dramatically increase product quality, leading to lower field service, product support and

Testing in a Mobile World

Chemuturi Consultants Do it well or not at all Productivity for Software Estimators Murali Chemuturi

Accelerating software testing effectiveness using Agile methodologies..

Increasing frequency of releases to every week down from quarterly major releases

AGILE SOFTWARE TESTING

Manual Tester s Guide to Automated Testing Contents

Software Testing Certifications

Utilizing Domain-Specific Modelling for Software Testing

Table of contents. Performance testing in Agile environments. Deliver quality software in less time. Business white paper

ASSURING SOFTWARE QUALITY USING VISUAL STUDIO 2010

Title: Continuous Delivery and Continuous Integration. Conference: 13 th Annual Software Testing Conference 2013

View Point. Developing a successful Point-of-Sale (POS) test automation strategy. Abstract. - Sujith George

Career Package. A Software Tester's Journey from Getting a Job to Becoming a Test Leader!

Datamaker for Skytap. Provide full-sized environments filled with up-to-date test data in minutes

Delivering Business-Critical Solutions with SharePoint 2010

Key Points. Indicative productivity has more than doubled in the team by using Agile SCRUM and TFS

Global Shared Support Service:

Agile Scrum Workshop

Automated Acceptance Testing of High Capacity Network Gateway

Software Quality Testing Course Material

Getting Started With Automated Testing. Michael Kelly

Enabling Continuous Delivery by Leveraging the Deployment Pipeline

Agile Testing Principles and Best Practices. Progress Software, Hyderabad, India

The Stacks Approach. Why It s Time to Start Thinking About Enterprise Technology in Stacks

Top Ten Reasons to Transition Your IT Sandbox Environments to the Cloud

Transcription:

Automation 2.0 Taking test automation beyond regression testing d Global Delivery Centre: 401-408, A-Wing, Pride Silicon Plaza, S.B. Road, Shivaji Nagar, Pune -411006, Maharashtra, INDIA Email: info@nitorinfotech.com Tel: +91-20-41020202

Introduction Whenever Test Automation is a point of discussion, it has always been linked with regression testing. Traditionally, it has been believed that test automation can only be used to support regression testing by taking the existing manual tests & converting them into automated test suites which are then rerun as part of regression testing to assess the quality of the software. Although there is no denying in the fact that test automation is best suited for regression testing, however there are few more facts attached to this. Regression tests of this sort miserably fail to detect new defects. Such automated regression suites are the simplest form of test automation which is highly expensive to maintain. It is fragile and breaks easily and hardly utilizes the full potential of test automation. These regression suites merely automate what the manual testers have been doing, in fact many a times, losing many of the advantages which manual testing has for finding defects. Through this document, Nitor intends to go much beyond the regular regression testing and try to throw light on what all can be achieved by leveraging the strengths and possibilities of test automation. Although there are limitless possibilities which one can achieve through test automation, this documents restricts to only few of those key possibilities, which would help in effectively extending the reach of test automation much beyond traditional regression testing Automation beyond regression Below mentioned are some of the key possible areas, wherein test automation can be utilized to leverage and fully utilize the immense potential of test automation Building a BVT (Build Validation Test) suite Creating test data for heavy data dependent scenarios Continuous Integration, thereby facilitating end to end (Build-Deploy-Test) testing Automated Unit Testing Technical testing such as Web Service, SOA and API testing

BVT (Build Validation Test) Suite With extensive adaption and implementation of agile methodology, there has been a drastic shift when it comes to test execution cycles. Unlike the traditional Waterfall methodology, wherein the QA team gets a prolonged test execution cycle, in Agile, the test execution cycles have become much shorter & a repetitive effort. Within a sprint cycle (of 2 or 3 weeks), there are multiple test execution cycles which are carried out to test the intended functionality being developed and released. The test execution cycles usually begin with a Smoke test cycle, wherein the basic functionalities of the application are checked, just to ensure whether the build is stable enough & testable enough so as to proceed further with a comprehensive functional testing cycle. This smoke testing suite usually consists of a fixed set of test scenarios/test cases designed using a shallow & wide approach covering the basic aspects & key functionalities of the entire application. These tests are subset of tests cases that verify main functionalities. As this smoke test suite is executed for every build cycle (almost on a daily basis), it does make sense to have it automated. This automated smoke test suite is nothing but the Build Verification Test suite which is a set of test cases run on each new build to verify that the build is testable. Benefits of automating the BVT suite Saves the manual testing effort in executing the same set of test cases manually for every build cycle Helps to surface out critical defects early Helps to save the efforts of QA team in setup and testing of the build, when major functionality is broken Test Data Generation One of the most important aspects in any testing activity is the usage of effective test data. Test data plays a very important role in success of testing cycles. The test data drives the test cases. However, generating the test data becomes a humungous task, especially for data driven/menu driven applications which are heavily data dependent. In such cases, generating the test data takes away valuable time of the QA resources. At times, when the customer is ready to share his live/production data the life becomes less miserable, however using customer s data is never a wise approach and at times, if such live data is exposed to unauthorized people, it not only puts the credibility at stake, but eventually leads to loss of business.

To overcome such situations and to generate effective and quality test data without spending too much of manual effort, generating the test data through automation scripts is the most viable and feasible solution. There are several test automation and automated tools available which can be utilized for creating a comprehensive and effective set of test data. Continuous Integration Continuous Integration (CI) is a practice/process in which the developer integrates the code into a shared repository frequently, which can even be several times a day. This arises the need to test the quality of the build for each commit or each check-ins. Carrying out such repetitive tests manually consumes a lot of manual efforts. Moreover, usually as it is the same test of scripts which needs to be tested every time, it makes more sense to have these tests automated rather than testing them manually. This is where executing automated test scripts in a CI environment is beneficial. In CI, each of the integrations or check-in builds are verified by an automated build, allowing teams to detect integration and other errors/problems early. CI allows the team to run automates test scripts after each commit & thus convey the results to the development team quickly and help to locate the issues more easily. The below diagram depicts the CI process:

All the above mentioned phases/activities of CI can be automated, right from compiling the build to publishing/deploying the build to triggering the unit testing suite, automated BVT suite, functional testing suite to reporting the results to the relevant stakeholder, everything can be made possible through a single test automation framework Using test automation in CI process effectively can yield multiple benefits. Some of these have been mentioned below: Helps in unearthing the issues/defects early and also helps in identifying the location of those defects Debugging time is reduced, hence developer can spend more time on their core activities Better confidence on the quality of the build Risks are reduced Automated Unit Testing There is no denying in the fact that, it s virtually impossible to write a bug free code. We humans are bound to make mistakes. Hence, testing of the code been written by the developer is so very imperative in the overall development cycle to ensure a thorough quality check. This is where Unit testing comes into picture. A unit test is a piece of code that tests another piece of code. This unit testing can be automated by using several unit testing tools. There are several commercial and open source tools available such as N-Unit, J-Unit, Struts, TestNG etc: Based on the platform and the technology for which the code needs to be tested, the appropriate automation tool and framework can be used. An automated unit test suite has a number of important and tangible advantages: Unit tests find problems early in the development cycle. An automated unit test suite test your code in two dimensions:

o Time dimension because once you ve written a unit test, it ensured that the code works well for now and in the future o Space dimension because unit tests written for other features ensures that the new code did not break them The development process becomes more flexible Reduces the need and effort for manual testing All of the above leads to making software more predictable, robust, repeatable and better quality. Technical testing API testing, SOA testing and Web service testing Although technical testing can be carried out manually, however there are several limitations and challenges in doing so. Complexities and dependencies needs to be addressed Lack of required technical skills Human errors leading to erroneous results These limitations can be easily overcome by implementing test automation for carrying out these technical testing activities. There are several tools (both commercial & open source) currently available in the market which can be used & by leveraging the inherent benefits of automated testing tools; the technical testing assignments can be made much more effective, reliable, faster & error-free. Conclusion Test Automation can do much more than traditional regression testing. Hence, limiting test automation for performing functional testing or regression testing would not only do injustice to test automation, but would also be like utilizing just 10% of its overall capabilities. Leveraging the benefits of test automation and utilizing it effectively in tasks which are complex, tedious, time & energy consuming and difficult to carry out manually is the what the current time & situation demands.

About Nitor Test Services Nitor Test Center of Excellence (TCoE) is an independent test practice with well-defined testing processes and profound knowledge of tools and techniques to cater to the testing needs of varied products/applications. Our professional team of test analysts has worked on products of varying complexity in terms of technology and functionality, projects and solutions across focus areas such as Business Intelligence, Portals & Collaboration and Enterprise Mobility. Nitor offers end to end testing services at aid our partners in continuous business growth through our niche technology focus and diverse domain expertise. Our TCoE offering include Highlights of Test Center of Excellence (TCoE) ISTQB Gold Certified test partner SSAE Soc- II Type-1 accredited organization Technology and platform agnostic. NitorTCoE is technology /software / tool independent 70 + strong team of certified test engineers Seven years of profound QA experience Strong knowledge base with expertise in diverse methodologies and tools

Contact Us NitorInfotech 401-408, A-Wing, Pride Silicon Plaza S.B. Road Pune -411006; Maharashtra, INDIA Email: info@nitorinfotech.com