NYC Technology Forum Introduction to Test Automation 11/2/07 All rights reserved Not to be reproduced without permission Bill Rinko-Gay Solutions Director,

Slides:



Advertisements
Similar presentations
The 4 T’s of Test Automation:
Advertisements

Designing Reusable Frameworks for Test Automation
PREDICT Model for Test Automation. Does it sound familiar to you? Organization has procured test automation tools Management expectations are high Multiple.
Problem solving methodology Information Technology Units Adapted from VCAA Study Design - Information Technology Byron Mitchell, November.
Test Automation Success: Choosing the Right People & Process
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
Test Automation An Approach to Automated Software Regression Testing Presented by Adnet, Inc Feb 2015.
Testing Without Executing the Code Pavlina Koleva Junior QA Engineer WinCore Telerik QA Academy Telerik QA Academy.
© Prentice Hall CHAPTER 9 Application Development by Information Systems Professionals.
Testing & Software Quality Seminar on software quality Karipekka Kaunisto.
Fundamentals of Information Systems, Second Edition
1.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Recall The Team Skills Analyzing the Problem
Measuring the effectiveness of government IT systems Current ANAO initiatives to enhance IT Audit integration and support in delivering Audit outcomes.
Introduction to Software Testing
Dr. Wolfgang J. Schneider FUNDAMENTAL TEST PROCESS Dr. Wolfgang J. Schneider 2003 – 2006.
Understanding of Automation Framework A Storehouse of Vast Knowledge on Software Testing and Quality Assurance.
“GENERIC SCRIPT” Everything can be automated, even automation process itself. “GENERIC SCRIPT” Everything can be automated, even automation process itself.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
MSF Testing Introduction Functional Testing Performance Testing.
September 2009 QTP Automation Framework. Objective  Introduction to Automation  Benefits of Automated Testing  Automated Testing Process  Introduction.
Test Automation Best Practices
 ETL: Extract Transformation and Load  Term is used to describe data migration or data conversion process  ETL may be part of the business process repeated.
Effective Methods for Software and Systems Integration
Automation Testing Tools
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Automation Fundamental Concepts &
INFO425: Systems Design INFORMATION X Finalizing Scope (functions/level of automation)  Finalizing scope in terms of functions and level of.
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Software System Engineering: A tutorial
Don’t Just “Test”… Validate!!
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Integrating Automation into Manual Testing
Winrunner Usage - Best Practices S.A.Christopher.
Data-Driven Transaction Based Unit Tests Engin Yorgancıoğlu Volkan Sevinçok Turkey.
Software Development Software Testing. Testing Definitions There are many tests going under various names. The following is a general list to get a feel.
A New Method For Developing IBIS-AMI Models
Testing Workflow In the Unified Process and Agile/Scrum processes.
Reusability and Effective Test Automation in Telecommunication System Testing Mikael Mattas Supervisor: Professor Sven-Gustav Häggman Instructor: B.Sc.
Exploring an Open Source Automation Framework Implementation.
MERCURY BUSINESS PROCESS TESTING. AGENDA  Objective  What is Business Process Testing  Business Components  Defining Requirements  Creation of Business.
Problem solving methodology Information Technology Units Adapted from VCAA Study Design - Information Technology Byron Mitchell, November.
DB2 Universal Database Confidential | July 2012 | India Software Lab Click to add text © 2012 IBM Corporation An End to End Windows Automation Framework.
Formal Methods in Software Engineering
Systems Analysis and Design in a Changing World, Fourth Edition
Fundamentals of Information Systems, Second Edition 1 Systems Development.
CprE 458/558: Real-Time Systems
Automated Testing Gireendra Kasmalkar Prabodhan Exports Pvt. Ltd.
LOGO TESTING Team 8: 1.Nguyễn Hoàng Khánh 2.Dương Quốc Việt 3.Trang Thế Vinh.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
A Framework for Automated and Composable Testing of Component-based Services Miguel A. Jiménez, Ángela Villota, Norha M. Villegas, Gabriel Tamura, Laurence.
By SPEC INDIA. TestComplete – An Introduction An automated testing tool by SmartBear – TestComplete is a comprehensive product with umpteen features and.
© 2005 Prentice Hall, Decision Support Systems and Intelligent Systems, 7th Edition, Turban, Aronson, and Liang 6-1 Chapter 6 Decision Support System Development.
RPA – Robotic Process Automation
What is Software Test Automation?
Essential Needs of Software Test Automation
Understanding of Automation Framework
Recall The Team Skills Analyzing the Problem
Automation – “A Critical Component of Agile testing”
Applied Software Implementation & Testing
6 Recommendations for Driving Business Value from Test Automation.
Introduction to Software Testing
By Jeff Burklo, Director
Sharing the good, the bad, the ugly & What can we do about it?
Software Test Automation and Tools
Bringing more value out of automation testing
Presentation transcript:

NYC Technology Forum Introduction to Test Automation 11/2/07 All rights reserved Not to be reproduced without permission Bill Rinko-Gay Solutions Director, Software Quality Management John Stephens Practice Director, Software Quality Management

2  Get familiarized with basic concepts of Test Automation  Understand what it takes to implement effective Test Automation  Introduce techniques to emphasize maintainability Objectives

What is Test Automation?

4 Benefits of Automated Testing Examples  Run automated tests unattended (overnight)  Reliable, consistent testing  Increased speed in test execution  Increased test coverage

5 General Misconceptions About Automated Testing  Automation is simply “record and playback”  Automation is the “silver bullet” to solve all testing problems  Return on Investment will be achieved immediately  Automation will replace all manual test cases

6 What is Test Automation?  An enhancement on manual testing  Utilizes technology to provide repeatable, consistent testing of the Application Under Test (AUT)  Reduces costs and time for regression testing

7 Primary Goal of Automated Testing  To reduce number of tests to be run manually, not to eliminate manual testing altogether Automated Testing is an enhancement upon existing methodology and manual process

So, You Want to Implement Test Automation…

9 Challenges in Automated Testing  Test Automation is a development effort!  Automation is time consuming to create (and maintain, if poorly implemented)  Limitations of the testing tools and developer expertise  Automation of the wrong tests for the given constraints  Unrealistic expectations

10  Criteria for Automation  Tool – AUT compatibility  Test Automation Requirements  Implementation Design  Stable, isolated test environment  Test data  Implementation and coding standards  Maintenance Test Automation Checklist

What to Automate? Choosing Ideal Manual Test Cases

12 Criteria for Automating a Test Case Repetitiveness Test Cases that are to be performed repeatedlyTest Cases that are business-critical and/or high risk Criticality Tedious Test Cases that are tedious to perform manually Time Consuming Test Cases that require considerable amount of time to perform manually Why Automate? Selecting the right tests to automate is very critical to effective implementation!!

13  Criteria for Automation  Tool – AUT compatibility  Test Automation Requirements  Implementation Design  Stable, isolated test environment  Test data  Implementation and coding standards  Maintenance Test Automation Checklist

14 Tool - AUT Compatibility  Conduct Proof of Concept of Tool on AUT  Navigate through functional areas to test  Verify Object Recognition of AUT  Determine whether tool selection is valid

15  Criteria for Automation  Tool – AUT compatibility  Test Automation Requirements  Implementation Design  Stable, isolated test environment  Test data  Implementation and coding standards  Maintenance Test Automation Checklist

16 Test Automation Requirements Definition The set of criteria that the automated test suite must meet to be successful - the requirements for an automation project.

17 Test Automation Requirements What are the Success Criteria for the project?  Meeting the goals and objectives of the automation effort  Tool capabilities  Capabilities and skills of the test automation team Example Requirement: The test tool shall test the login functionality of a web application, on a Windows 2000 platform, and run unattended simultaneously on three PCs.

18 Planning for Test Automation Test Automation Requirements help drive and determine the approach and design of the implementation. Test Automation Requirements Test Automation Design/Approach

19  Criteria for Automation  Tool – AUT compatibility  Test Automation Requirements  Implementation Design  Stable, isolated test environment  Test data  Implementation and coding standards  Maintenance Test Automation Checklist

20 Test Automation Methodology Analysis & Strategy Execution & Results Management Construction Design

21  Automation Architecture encompasses the environment for execution and development of an automated test suite. It is the overall scheme in which the test scripts will be developed. Implement a Test Automation Architecture

Designing the Test Automation Architecture Maximizing Maintainability

23 Automation Architecture Design Options  Capture/replay  Framework-based  Data-driven  Keyword-driven  Hybrid

24 Design Goals  Evaluate feasible design options for implementation  Anticipate likely changes to AUT  Consider skill level of team members developing and/or inheriting the automated scripts  Design of automated tests should address test automation requirements

25 Typical Design Components Subscripts Startup Script Data Table Driver Script Function Library Compiled module containing application-specific routines and functions A script that initiates automated test execution A script that performs a discrete portion of a business process to be tested A script that sets up and standardizes test automation environment Data sources (such as spreadsheets) used to store test data for use during test execution

26  Criteria for Automation  Tool – AUT compatibility  Test Automation Requirements  Implementation Design  Stable, isolated test environment  Test data  Implementation and coding standards  Maintenance Test Automation Checklist

27 Automation Test Environment  Stable and isolated environment is important for reliable execution of automated tests  GUI must be identical to Production

28  Criteria for Automation  Tool – AUT compatibility  Test Automation Requirements  Implementation Design  Stable, isolated test environment  Test data  Implementation and coding standards  Maintenance Test Automation Checklist

29 Test Data Strategy  Create a test environment that is restorable to a known constant, such that the test cases can be repeated each time  Identify the procedure required for backup and recovery of data Test Data is critical to reliable automated testing!!

30 Creating Test Data Various Methods  Create test data through application by doing data entry  Import test data from production environment, if available  Develop automated test scripts to generate test data as prerequisite

31  Criteria for Automation  Tool – AUT compatibility  Test Automation Requirements  Implementation Design  Stable, isolated test environment  Test data  Implementation and coding standards  Maintenance Test Automation Checklist

32 Coding Standards  Specify coding practices and naming conventions  May be based on standards in place for project’s AUT developers

33  Criteria for Automation  Tool – AUT compatibility  Test Automation Requirements  Implementation Design  Stable, isolated test environment  Test data  Implementation and coding standards  Maintenance Test Automation Checklist

34 Maintenance  Start small and build on  Build modular components  Stay within scope of automation requirements  Adhere to defined standards and conventions Emphasize robustness and flexibility

35 Maintenance  Must be a good tester  Has programming background  Must be aware of maintenance and reliability  Must be motivated to develop and create automated test scripts Building an Automation Test Team Ideal characteristics of an Automation Engineer:

36  Get familiarized with basic concepts of Test Automation  Understand what it takes to implement effective Test Automation  Introduce techniques to emphasize maintainability Learning Objectives Revisited

37