Download presentation
Presentation is loading. Please wait.
Published byEustacia Rose Modified over 9 years ago
2
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
3
2 Get familiarized with basic concepts of Test Automation Understand what it takes to implement effective Test Automation Introduce techniques to emphasize maintainability Objectives
4
What is Test Automation?
5
4 Benefits of Automated Testing Examples Run automated tests unattended (overnight) Reliable, consistent testing Increased speed in test execution Increased test coverage
6
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
7
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
8
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
9
So, You Want to Implement Test Automation…
10
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
11
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
12
What to Automate? Choosing Ideal Manual Test Cases
13
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!!
14
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
15
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
16
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
17
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.
18
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.
19
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
20
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
21
20 Test Automation Methodology Analysis & Strategy Execution & Results Management Construction Design
22
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
23
Designing the Test Automation Architecture Maximizing Maintainability
24
23 Automation Architecture Design Options Capture/replay Framework-based Data-driven Keyword-driven Hybrid
25
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
26
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
27
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
28
27 Automation Test Environment Stable and isolated environment is important for reliable execution of automated tests GUI must be identical to Production
29
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
30
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!!
31
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
32
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
33
32 Coding Standards Specify coding practices and naming conventions May be based on standards in place for project’s AUT developers
34
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
35
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
36
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:
37
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
38
37
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.