NYC Technology Forum Introduction to Test Automation 11/2/07 All rights reserved Not to be reproduced without permission B...
<ul><li>Get familiarized with basic concepts of Test Automation </li></ul><ul><li>Understand what it takes to implement ef...
What is Test Automation?
Benefits of Automated Testing Examples <ul><li>Run automated tests unattended (overnight) </li></ul><ul><li>Reliable, cons...
General Misconceptions About Automated Testing <ul><li>Automation is simply “record and playback” </li></ul><ul><li>Automa...
What is Test Automation? <ul><li>An enhancement on manual testing </li></ul><ul><li>Utilizes technology to provide repeata...
Primary Goal of Automated Testing <ul><li>To reduce number of tests to be run manually, not to eliminate manual testing al...
So, You Want to Implement Test Automation…
Challenges  in Automated Testing <ul><li>Test Automation is a development effort! </li></ul><ul><li>Automation is time con...
Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Tes...
What to Automate? Choosing Ideal Manual Test Cases
Criteria for Automating a Test Case Why Automate? Selecting the right tests to automate is very critical to effective impl...
Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Tes...
Tool - AUT Compatibility <ul><li>Conduct Proof of Concept of Tool on AUT </li></ul><ul><li>Navigate through functional are...
Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Tes...
Test Automation Requirements Definition The set of criteria that the automated test suite must meet to be successful - the...
Test Automation Requirements What are the Success Criteria for the project? <ul><li>Meeting the goals and objectives of th...
Planning for Test Automation Test Automation Requirements  help drive and determine  the approach and design of the implem...
Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Tes...
Test Automation Methodology Analysis &  Strategy Execution & Results  Management Construction Design
<ul><li>Automation Architecture encompasses the environment for execution and development of an automated test suite.  It ...
Designing the Test Automation Architecture Maximizing Maintainability
Automation Architecture Design Options <ul><li>Capture/replay </li></ul><ul><li>Framework-based </li></ul><ul><li>Data-dri...
Design Goals <ul><li>Evaluate feasible design options for implementation </li></ul><ul><li>Anticipate likely changes to AU...
Typical Design Components Subscripts Startup Script Data Table Driver Script Function Library <ul><ul><li>Compiled module ...
Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Tes...
Automation Test Environment <ul><li>Stable and isolated environment is important for reliable execution of automated tests...
Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Tes...
Test Data Strategy <ul><li>Create a test environment that is restorable to a known constant, such that the test cases can ...
Creating Test Data Various Methods <ul><li>Create test data through application by doing data entry </li></ul><ul><li>Impo...
Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Tes...
Coding Standards <ul><li>Specify coding practices and naming conventions </li></ul><ul><li>May be based on standards in pl...
Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Tes...
Maintenance <ul><li>Start small and build on </li></ul><ul><li>Build modular components </li></ul><ul><li>Stay within scop...
Maintenance <ul><li>Must be a good tester </li></ul><ul><li>Has programming background </li></ul><ul><li>Must be aware of ...
<ul><li>Get familiarized with basic concepts of Test Automation </li></ul><ul><li>Understand what it takes to implement ef...
Q&A
Upcoming SlideShare
Loading in...5
×

Software Testing

5,355

Published on

Learn about Software Testing

Published in: Technology
7 Comments
8 Likes
Statistics
Notes
  • Hi can you pls send me this presentation to my mail id : brijeshkatkamwar4@gmail.com

    Very usefull and nice presentation :)
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Hi ,
    It is a very imporant and impressive slide. Please send me the same at my email id at spshruti4@gmail.com
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • May Name is Sharif. I am very much impressed with the Slide Show. I request you to send me one copy as I am in need.

    cabdaoui@gmail.com
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • May Name is Sharif. I am very much impressed with the Slide Show. I request you to send me one copy as I am in need.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • hi my name is krishnangshu u have made an excellent presentation can u pleaseeeee send it to my email id my id is krishnangshu@gamil..com it wiil be very help full since i dont have internet at home
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
5,355
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
7
Likes
8
Embeds 0
No embeds

No notes for slide
  • Rapid Business Driven Testing ver. 1.0.0 Page Student Study Guide
  • Software Testing

    1. 1. 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. 2. <ul><li>Get familiarized with basic concepts of Test Automation </li></ul><ul><li>Understand what it takes to implement effective Test Automation </li></ul><ul><li>Introduce techniques to emphasize maintainability </li></ul>Objectives
    3. 3. What is Test Automation?
    4. 4. Benefits of Automated Testing Examples <ul><li>Run automated tests unattended (overnight) </li></ul><ul><li>Reliable, consistent testing </li></ul><ul><li>Increased speed in test execution </li></ul><ul><li>Increased test coverage </li></ul>
    5. 5. General Misconceptions About Automated Testing <ul><li>Automation is simply “record and playback” </li></ul><ul><li>Automation is the “silver bullet” to solve all testing problems </li></ul><ul><li>Return on Investment will be achieved immediately </li></ul><ul><li>Automation will replace all manual test cases </li></ul>
    6. 6. What is Test Automation? <ul><li>An enhancement on manual testing </li></ul><ul><li>Utilizes technology to provide repeatable, consistent testing of the Application Under Test (AUT) </li></ul><ul><li>Reduces costs and time for regression testing </li></ul>
    7. 7. Primary Goal of Automated Testing <ul><li>To reduce number of tests to be run manually, not to eliminate manual testing altogether </li></ul>Automated Testing is an enhancement upon existing methodology and manual process
    8. 8. So, You Want to Implement Test Automation…
    9. 9. Challenges in Automated Testing <ul><li>Test Automation is a development effort! </li></ul><ul><li>Automation is time consuming to create (and maintain, if poorly implemented) </li></ul><ul><li>Limitations of the testing tools and developer expertise </li></ul><ul><li>Automation of the wrong tests for the given constraints </li></ul><ul><li>Unrealistic expectations </li></ul>
    10. 10. Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Test Automation Requirements </li></ul><ul><li>Implementation Design </li></ul><ul><li>Stable, isolated test environment </li></ul><ul><li>Test data </li></ul><ul><li>Implementation and coding standards </li></ul><ul><li>Maintenance </li></ul>
    11. 11. What to Automate? Choosing Ideal Manual Test Cases
    12. 12. Criteria for Automating a Test Case Why Automate? Selecting the right tests to automate is very critical to effective implementation!! Repetitiveness Test Cases that are to be performed repeatedly Test 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
    13. 13. Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Test Automation Requirements </li></ul><ul><li>Implementation Design </li></ul><ul><li>Stable, isolated test environment </li></ul><ul><li>Test data </li></ul><ul><li>Implementation and coding standards </li></ul><ul><li>Maintenance </li></ul>
    14. 14. Tool - AUT Compatibility <ul><li>Conduct Proof of Concept of Tool on AUT </li></ul><ul><li>Navigate through functional areas to test </li></ul><ul><li>Verify Object Recognition of AUT </li></ul><ul><li>Determine whether tool selection is valid </li></ul>
    15. 15. Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Test Automation Requirements </li></ul><ul><li>Implementation Design </li></ul><ul><li>Stable, isolated test environment </li></ul><ul><li>Test data </li></ul><ul><li>Implementation and coding standards </li></ul><ul><li>Maintenance </li></ul>
    16. 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. 17. Test Automation Requirements What are the Success Criteria for the project? <ul><li>Meeting the goals and objectives of the automation effort </li></ul><ul><li>Tool capabilities </li></ul><ul><li>Capabilities and skills of the test automation team </li></ul>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. 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. 19. Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Test Automation Requirements </li></ul><ul><li>Implementation Design </li></ul><ul><li>Stable, isolated test environment </li></ul><ul><li>Test data </li></ul><ul><li>Implementation and coding standards </li></ul><ul><li>Maintenance </li></ul>
    20. 20. Test Automation Methodology Analysis & Strategy Execution & Results Management Construction Design
    21. 21. <ul><li>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. </li></ul>Implement a Test Automation Architecture
    22. 22. Designing the Test Automation Architecture Maximizing Maintainability
    23. 23. Automation Architecture Design Options <ul><li>Capture/replay </li></ul><ul><li>Framework-based </li></ul><ul><li>Data-driven </li></ul><ul><li>Keyword-driven </li></ul><ul><li>Hybrid </li></ul>
    24. 24. Design Goals <ul><li>Evaluate feasible design options for implementation </li></ul><ul><li>Anticipate likely changes to AUT </li></ul><ul><li>Consider skill level of team members developing and/or inheriting the automated scripts </li></ul><ul><li>Design of automated tests should address test automation requirements </li></ul>
    25. 25. Typical Design Components Subscripts Startup Script Data Table Driver Script Function Library <ul><ul><li>Compiled module containing application-specific routines and functions </li></ul></ul><ul><ul><ul><li>A script that initiates automated test execution </li></ul></ul></ul>A script that performs a discrete portion of a business process to be tested <ul><ul><li>A script that sets up and standardizes test automation environment </li></ul></ul>Data sources (such as spreadsheets) used to store test data for use during test execution
    26. 26. Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Test Automation Requirements </li></ul><ul><li>Implementation Design </li></ul><ul><li>Stable, isolated test environment </li></ul><ul><li>Test data </li></ul><ul><li>Implementation and coding standards </li></ul><ul><li>Maintenance </li></ul>
    27. 27. Automation Test Environment <ul><li>Stable and isolated environment is important for reliable execution of automated tests </li></ul><ul><li>GUI must be identical to Production </li></ul>
    28. 28. Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Test Automation Requirements </li></ul><ul><li>Implementation Design </li></ul><ul><li>Stable, isolated test environment </li></ul><ul><li>Test data </li></ul><ul><li>Implementation and coding standards </li></ul><ul><li>Maintenance </li></ul>
    29. 29. Test Data Strategy <ul><li>Create a test environment that is restorable to a known constant, such that the test cases can be repeated each time </li></ul><ul><li>Identify the procedure required for backup and recovery of data </li></ul>Test Data is critical to reliable automated testing!!
    30. 30. Creating Test Data Various Methods <ul><li>Create test data through application by doing data entry </li></ul><ul><li>Import test data from production environment, if available </li></ul><ul><li>Develop automated test scripts to generate test data as prerequisite </li></ul>
    31. 31. Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Test Automation Requirements </li></ul><ul><li>Implementation Design </li></ul><ul><li>Stable, isolated test environment </li></ul><ul><li>Test data </li></ul><ul><li>Implementation and coding standards </li></ul><ul><li>Maintenance </li></ul>
    32. 32. Coding Standards <ul><li>Specify coding practices and naming conventions </li></ul><ul><li>May be based on standards in place for project’s AUT developers </li></ul>
    33. 33. Test Automation Checklist <ul><li>Criteria for Automation </li></ul><ul><li>Tool – AUT compatibility </li></ul><ul><li>Test Automation Requirements </li></ul><ul><li>Implementation Design </li></ul><ul><li>Stable, isolated test environment </li></ul><ul><li>Test data </li></ul><ul><li>Implementation and coding standards </li></ul><ul><li>Maintenance </li></ul>
    34. 34. Maintenance <ul><li>Start small and build on </li></ul><ul><li>Build modular components </li></ul><ul><li>Stay within scope of automation requirements </li></ul><ul><li>Adhere to defined standards and conventions </li></ul>Emphasize robustness and flexibility
    35. 35. Maintenance <ul><li>Must be a good tester </li></ul><ul><li>Has programming background </li></ul><ul><li>Must be aware of maintenance and reliability </li></ul><ul><li>Must be motivated to develop and create automated test scripts </li></ul>Building an Automation Test Team Ideal characteristics of an Automation Engineer:
    36. 36. <ul><li>Get familiarized with basic concepts of Test Automation </li></ul><ul><li>Understand what it takes to implement effective Test Automation </li></ul><ul><li>Introduce techniques to emphasize maintainability </li></ul>Learning Objectives Revisited
    37. 37. Q&A

    ×