SlideShare a Scribd company logo
Adventures in Test Automation – 
Breaking the Boundaries of Regression Testing 
John Fodeh, Cognizant Technology Solutions 
www.eurostarconferences.com 
@esconfs 
#esconfs 
Insert speaker 
picture here, no 
more than 
150x150 pixels
Adventures in Test 
Automation 
Breaking the Boundaries of 
Regression Testing 
John Fodeh 
Cognizant Technology Solutions 
john.fodeh@cognizant.com
Outline 
• Innovation and testing 
• The promise of automation 
• Going beyond regression testing 
• Automated Test Monkeys 
• Model-Based and Behaviour-Driven approaches 
• The human factor in automation 
| ©2012, Cognizant 
3
The Promise of Test Automation 
• Replacing repetitive and 
tedious manual tasks 
• Ensuring the consistency and 
repeatability of tests 
• Performing tests that are 
difficult to run manually 
• Accelerating test execution 
| ©2012, Cognizant 
4 
* Image source: Rosemont Engineering
Traditional Test Automation 
| ©2012, Cognizant 
5 
Typically 
Automation of regression tests 
Purpose 
Testing of a previously tested program following 
modification to ensure that defects have not been 
introduced or uncovered in unchanged areas of the 
software, as a result of the changes made. It is performed 
when the software or its environment is changed. 
[ISTQB Glossary, v2.1]
Characteristics of Traditional Test Automation 
• Static 
• Simple 
• Synchronized 
• Vulnerable 
| ©2012, Cognizant 
6
Monkey Testing 
| ©2012, Cognizant 
7 
Monkey Testing refers to the 
process of randomly exercising a 
software program by means of an 
automated test tool
Test Monkey 
Action List 
| ©2012, Cognizant 
8 
#script file: Test4.asc 
CP_KEY FOCUS_UP; 
TRACKBALL 0, 64; 
KEY L; 
KEY 5, LONG; 
KEY 8; 
CP_KEY FOCUS_UP; 
Random 
Test Tool 
#script file: Test4.asc 
KEY L; 
KEY 5, LONG; 
CP_KEY FOCUS_UP; 
#KEY BOX_SIZE_UP 
KEY 8; 
TRACKBALL 0, 64; 
KEY SHIFT, R; 
Log file 
Application 
Under Test 
KEY FOCUS_UP; 
Utilities
Basic Features 
A test monkey should: 
• Select randomly from input range 
• Enter input to AUT through the user interface 
• Detect “life signs” of AUT 
• Have robust logging facility 
• (Re-) start and initialize AUT 
• Have limited application knowledge but general 
environment awareness 
| ©2012, Cognizant 
9
Using Test Monkeys 
• Indicator of application reliability 
• Incorporated into daily “smoke” test 
• Establish confidence in application 
• System test tool 
• Evaluation of release candidates 
• Previously failed scripts are run again as part of 
regression tests 
• Focus tests on specific areas of interest 
• Combinations of sequential and random scripts 
• Random scripts with weight on specific actions 
| ©2012, Cognizant 
10
Metrics – Application Reliability 
| ©2012, Cognizant 
Stability Trend for 4101 
120000 
100000 
80000 
60000 
40000 
20000 
0 
Release 
Criterion 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 
Build no. 
Mean number of random operations between 
Failures 
Random operations Start Criterion Release Stability Criterion 
11 
Entry 
Criterion
Added Value (1/2) 
• Early testing 
• Cost effective 
• Negative testing 
• Long and complex test runs 
• Stability indicator 
| ©2012, Cognizant 
12
Limitations 
• Misses obvious defects 
• Does not emulate real use situations 
• Long tests runs can be difficult to debug 
• For a reliable statistical basis, long and multiple test 
runs are needed 
| ©2012, Cognizant 
13 
Monkey Testing is a supplement 
to your manual and automated 
testing - not a replacement!
Advanced Test Monkeys 
• Wide application knowledge 
• Application modeled in state table 
• Illegal input to test error handling and recovery 
• Emulate real and complex use scenarios 
• Effective in finding defects 
• Higher development and maintenance cost 
| ©2012, Cognizant 
14
Test Monkey 
| ©2012, Cognizant 
15 
Random 
Test Tool 
State table 
Log file 
Application 
Under Test 
Utilities 
Start 
State 
Action End 
State 
Script 
Start state Action Probability 
Input 
range End state 
Scanning Adjust frequency 45 3 20 Scanning 
Adjust brightness 20 1 100 Scanning 
Abort 5 Displaying (abort) 
Edit preferences 10 Editing preferences 
Increment depth 20 Scanning
Intelligent Randomness 
• Probability Tables 
• Focus on selected areas 
• Weight on specific use 
scenarios 
• Continuous expansion and 
improvement 
• Possibility to exclude 
certain parts 
| ©2012, Cognizant 
16 
Enter Text 
Select Text 
Delete 
Copy 
Cut 
… 
Task n 
Action 
25% 
10% 
5% 
5% 
5% 
* source: Whitmill, Kelly
Model-Based Test Monkeys 
MStoadteel table Script 
| ©2012, Cognizant 
17 
Random 
Test Tool 
Log file 
Application 
Under Test 
Utilities 
Start 
State 
Action End 
State
Next Step - Behavior-Driven approach 
• Based on Behavioral specifications 
• User Stories defined using ubiquitous language 
• Principles of Test Driven Development 
• Collaborative approach for business analysts, 
Software development & testing 
• Shared tools and process 
| ©2012, Cognizant 
18
People Issues 
• Applying test automation involves people 
• Your team members are not interchangeable machine 
parts 
• Take that into account when implementing test 
automation 
| ©2012, Cognizant 
19
Summary 
• No “one size fits all” solution 
• The tools, processes and skills are there 
• Maturity is about analyzing the current practice and 
finding ways to do evolve 
• Are you ready for your innovation journey? 
| ©2012, Cognizant 
20

More Related Content

PDF
Introduction to Test Automation - Technology and Tools
PDF
Agile testing - Principles and best practices
PDF
Introduction to Software Test Automation
PDF
New trends in testing automation
PPT
Programming skills for test automation
PPT
Automated Testing vs Manual Testing
PPT
Software testing basic concepts
PPT
Automation Concepts
Introduction to Test Automation - Technology and Tools
Agile testing - Principles and best practices
Introduction to Software Test Automation
New trends in testing automation
Programming skills for test automation
Automated Testing vs Manual Testing
Software testing basic concepts
Automation Concepts

What's hot (20)

PDF
Why Test Automation Fails
PDF
Agile testing principles and practices - Anil Karade
PDF
Software Testing Basic Concepts
PDF
Test automation methodologies
PPTX
Guide to Agile testing
PDF
Building a Test Automation Strategy for Success
PPTX
Advanced Software Test Automation
PDF
Automated vs manual testing
PPTX
Manual Testing Material by Durgasoft
PDF
Manual Testing Interview Questions | Edureka
PDF
Manual Testing
PPTX
50+ ways to improve tester - programmer relationship
PDF
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
PPTX
Framework for Web Automation Testing
PDF
Software Testing Process, Testing Automation and Software Testing Trends
PPTX
Continuous Testing in Vegas
PPTX
Software test automation_overview
PDF
Istqb Agile-tester Extension
PDF
Test Life Cycle - Presentation - Important concepts covered
ODP
QA Process Overview
Why Test Automation Fails
Agile testing principles and practices - Anil Karade
Software Testing Basic Concepts
Test automation methodologies
Guide to Agile testing
Building a Test Automation Strategy for Success
Advanced Software Test Automation
Automated vs manual testing
Manual Testing Material by Durgasoft
Manual Testing Interview Questions | Edureka
Manual Testing
50+ ways to improve tester - programmer relationship
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Framework for Web Automation Testing
Software Testing Process, Testing Automation and Software Testing Trends
Continuous Testing in Vegas
Software test automation_overview
Istqb Agile-tester Extension
Test Life Cycle - Presentation - Important concepts covered
QA Process Overview
Ad

Viewers also liked (13)

PDF
Leveraging Cloud for Non-Production Environments
PDF
Testing Centralization
PDF
Regression Tests with Symfony - Example
PDF
Automate virtualize and smart test the new testing realities
PPTX
How to take organizations to higher testing maturity suresh bose anagha mahaj...
PPT
Taking Testing to the Cloud
PDF
AppSphere 15 - Capgemini Autonomics: PaaS for Automating Business Outcomes
PDF
Regression Test Automation Framework
PDF
Capgemini Ron Tolido - the 3rd Platform and Insurance
PPTX
Lean Innovation in Insurance with Cognizant Digital Foundry
PPTX
Regression Testing
PPTX
ATAGTR2017 Artificial Intelligence in Software Testing – Demystified
PPT
multiple regression
Leveraging Cloud for Non-Production Environments
Testing Centralization
Regression Tests with Symfony - Example
Automate virtualize and smart test the new testing realities
How to take organizations to higher testing maturity suresh bose anagha mahaj...
Taking Testing to the Cloud
AppSphere 15 - Capgemini Autonomics: PaaS for Automating Business Outcomes
Regression Test Automation Framework
Capgemini Ron Tolido - the 3rd Platform and Insurance
Lean Innovation in Insurance with Cognizant Digital Foundry
Regression Testing
ATAGTR2017 Artificial Intelligence in Software Testing – Demystified
multiple regression
Ad

Similar to John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regression Testing - EuroSTAR 2012 (20)

PDF
Innovations in Test Automation: It’s Not All about Regression
PPT
Test automation lessons from WebSphere Application Server
PPT
Презентация
PPT
7 steps to Software test automation success
PPT
Automated Software Testing Framework Training by Quontra Solutions
PDF
[HCMC STC Jan 2015] Practical Experiences In Test Automation
PPT
CEN6070.1.Chapter10.1.ppt
PPT
Testing software
PPT
CEN6070.1.Chapter10.1.ppt
PPT
CEN6070.1.Chapter10.1.ppt
PPT
CEN6070.1.Chapter10.1 (1).ppt
PPTX
Practical Software Testing Tools
PDF
Lecture #6. automation testing (andrey oleynik)
PPTX
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
PPT
rryghg.ppt
PPTX
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
PDF
How to build confidence in your release cycle
PPTX
A Complete Guide to Functional Testing
PPT
Bugday bkk-2014 nitisak-auto_perf
PPTX
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx
Innovations in Test Automation: It’s Not All about Regression
Test automation lessons from WebSphere Application Server
Презентация
7 steps to Software test automation success
Automated Software Testing Framework Training by Quontra Solutions
[HCMC STC Jan 2015] Practical Experiences In Test Automation
CEN6070.1.Chapter10.1.ppt
Testing software
CEN6070.1.Chapter10.1.ppt
CEN6070.1.Chapter10.1.ppt
CEN6070.1.Chapter10.1 (1).ppt
Practical Software Testing Tools
Lecture #6. automation testing (andrey oleynik)
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
rryghg.ppt
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
How to build confidence in your release cycle
A Complete Guide to Functional Testing
Bugday bkk-2014 nitisak-auto_perf
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx

More from TEST Huddle (20)

PPTX
Why We Need Diversity in Testing- Accenture
PPTX
Keys to continuous testing for faster delivery euro star webinar
PPTX
Why you Shouldnt Automated But You Will Anyway
PDF
Being a Tester in Scrum
PDF
Leveraging Visual Testing with Your Functional Tests
PPTX
Using Test Trees to get an Overview of Test Work
PPTX
Big Data: The Magic to Attain New Heights
PPTX
Will Robots Replace Testers?
PPTX
TDD For The Rest Of Us
PDF
Scaling Agile with LeSS (Large Scale Scrum)
PPTX
Creating Agile Test Strategies for Larger Enterprises
PPTX
Is There A Risk?
PDF
Are Your Tests Well-Travelled? Thoughts About Test Coverage
PDF
Growing a Company Test Community: Roles and Paths for Testers
PDF
Do we need testers on agile teams?
PDF
How to use selenium successfully
PDF
Testers & Teams on the Agile Fluency™ Journey
PDF
Practical Test Strategy Using Heuristics
PDF
Thinking Through Your Role
PDF
Using Selenium 3 0
Why We Need Diversity in Testing- Accenture
Keys to continuous testing for faster delivery euro star webinar
Why you Shouldnt Automated But You Will Anyway
Being a Tester in Scrum
Leveraging Visual Testing with Your Functional Tests
Using Test Trees to get an Overview of Test Work
Big Data: The Magic to Attain New Heights
Will Robots Replace Testers?
TDD For The Rest Of Us
Scaling Agile with LeSS (Large Scale Scrum)
Creating Agile Test Strategies for Larger Enterprises
Is There A Risk?
Are Your Tests Well-Travelled? Thoughts About Test Coverage
Growing a Company Test Community: Roles and Paths for Testers
Do we need testers on agile teams?
How to use selenium successfully
Testers & Teams on the Agile Fluency™ Journey
Practical Test Strategy Using Heuristics
Thinking Through Your Role
Using Selenium 3 0

Recently uploaded (20)

PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPT
Teaching material agriculture food technology
PDF
Encapsulation theory and applications.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
OMC Textile Division Presentation 2021.pptx
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
August Patch Tuesday
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Programs and apps: productivity, graphics, security and other tools
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
NewMind AI Weekly Chronicles - August'25-Week II
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Mobile App Security Testing_ A Comprehensive Guide.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Teaching material agriculture food technology
Encapsulation theory and applications.pdf
A comparative study of natural language inference in Swahili using monolingua...
Group 1 Presentation -Planning and Decision Making .pptx
Machine learning based COVID-19 study performance prediction
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
OMC Textile Division Presentation 2021.pptx
SOPHOS-XG Firewall Administrator PPT.pptx
August Patch Tuesday
cloud_computing_Infrastucture_as_cloud_p
Per capita expenditure prediction using model stacking based on satellite ima...

John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regression Testing - EuroSTAR 2012

  • 1. Adventures in Test Automation – Breaking the Boundaries of Regression Testing John Fodeh, Cognizant Technology Solutions www.eurostarconferences.com @esconfs #esconfs Insert speaker picture here, no more than 150x150 pixels
  • 2. Adventures in Test Automation Breaking the Boundaries of Regression Testing John Fodeh Cognizant Technology Solutions [email protected]
  • 3. Outline • Innovation and testing • The promise of automation • Going beyond regression testing • Automated Test Monkeys • Model-Based and Behaviour-Driven approaches • The human factor in automation | ©2012, Cognizant 3
  • 4. The Promise of Test Automation • Replacing repetitive and tedious manual tasks • Ensuring the consistency and repeatability of tests • Performing tests that are difficult to run manually • Accelerating test execution | ©2012, Cognizant 4 * Image source: Rosemont Engineering
  • 5. Traditional Test Automation | ©2012, Cognizant 5 Typically Automation of regression tests Purpose Testing of a previously tested program following modification to ensure that defects have not been introduced or uncovered in unchanged areas of the software, as a result of the changes made. It is performed when the software or its environment is changed. [ISTQB Glossary, v2.1]
  • 6. Characteristics of Traditional Test Automation • Static • Simple • Synchronized • Vulnerable | ©2012, Cognizant 6
  • 7. Monkey Testing | ©2012, Cognizant 7 Monkey Testing refers to the process of randomly exercising a software program by means of an automated test tool
  • 8. Test Monkey Action List | ©2012, Cognizant 8 #script file: Test4.asc CP_KEY FOCUS_UP; TRACKBALL 0, 64; KEY L; KEY 5, LONG; KEY 8; CP_KEY FOCUS_UP; Random Test Tool #script file: Test4.asc KEY L; KEY 5, LONG; CP_KEY FOCUS_UP; #KEY BOX_SIZE_UP KEY 8; TRACKBALL 0, 64; KEY SHIFT, R; Log file Application Under Test KEY FOCUS_UP; Utilities
  • 9. Basic Features A test monkey should: • Select randomly from input range • Enter input to AUT through the user interface • Detect “life signs” of AUT • Have robust logging facility • (Re-) start and initialize AUT • Have limited application knowledge but general environment awareness | ©2012, Cognizant 9
  • 10. Using Test Monkeys • Indicator of application reliability • Incorporated into daily “smoke” test • Establish confidence in application • System test tool • Evaluation of release candidates • Previously failed scripts are run again as part of regression tests • Focus tests on specific areas of interest • Combinations of sequential and random scripts • Random scripts with weight on specific actions | ©2012, Cognizant 10
  • 11. Metrics – Application Reliability | ©2012, Cognizant Stability Trend for 4101 120000 100000 80000 60000 40000 20000 0 Release Criterion 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Build no. Mean number of random operations between Failures Random operations Start Criterion Release Stability Criterion 11 Entry Criterion
  • 12. Added Value (1/2) • Early testing • Cost effective • Negative testing • Long and complex test runs • Stability indicator | ©2012, Cognizant 12
  • 13. Limitations • Misses obvious defects • Does not emulate real use situations • Long tests runs can be difficult to debug • For a reliable statistical basis, long and multiple test runs are needed | ©2012, Cognizant 13 Monkey Testing is a supplement to your manual and automated testing - not a replacement!
  • 14. Advanced Test Monkeys • Wide application knowledge • Application modeled in state table • Illegal input to test error handling and recovery • Emulate real and complex use scenarios • Effective in finding defects • Higher development and maintenance cost | ©2012, Cognizant 14
  • 15. Test Monkey | ©2012, Cognizant 15 Random Test Tool State table Log file Application Under Test Utilities Start State Action End State Script Start state Action Probability Input range End state Scanning Adjust frequency 45 3 20 Scanning Adjust brightness 20 1 100 Scanning Abort 5 Displaying (abort) Edit preferences 10 Editing preferences Increment depth 20 Scanning
  • 16. Intelligent Randomness • Probability Tables • Focus on selected areas • Weight on specific use scenarios • Continuous expansion and improvement • Possibility to exclude certain parts | ©2012, Cognizant 16 Enter Text Select Text Delete Copy Cut … Task n Action 25% 10% 5% 5% 5% * source: Whitmill, Kelly
  • 17. Model-Based Test Monkeys MStoadteel table Script | ©2012, Cognizant 17 Random Test Tool Log file Application Under Test Utilities Start State Action End State
  • 18. Next Step - Behavior-Driven approach • Based on Behavioral specifications • User Stories defined using ubiquitous language • Principles of Test Driven Development • Collaborative approach for business analysts, Software development & testing • Shared tools and process | ©2012, Cognizant 18
  • 19. People Issues • Applying test automation involves people • Your team members are not interchangeable machine parts • Take that into account when implementing test automation | ©2012, Cognizant 19
  • 20. Summary • No “one size fits all” solution • The tools, processes and skills are there • Maturity is about analyzing the current practice and finding ways to do evolve • Are you ready for your innovation journey? | ©2012, Cognizant 20