SlideShare a Scribd company logo
The Four Generations of Test Automation
April 2013
By Renard Vardy
TekLink International Pty Ltd
renard.vardy@teklinkinternational.com
TekLink International Slide #2
The Goal
1. Improve Software quality
2. Early detection of bugs (Defects)
3. Reduce (not introduce) project risk
4. Easy to write and maintain by BA, Testing
and technical resources
5. Reduced cost and time of development
TekLink International Slide #3
Contents
Record and
playback
Data
Driven
Key Word
Driven
Behaviour
Driven
Function
Driven
1st Gen 2nd Gen 3rd Gen 4th Gen
TekLink International Slide #4
Gen 1 – Record and Playback
• The easiest framework to implement
• The framework pushed by tool vendors
• The framework I use to teach students how to
use a test automation tool
Record
Test Case
Play Back
Test Case
TekLink International Slide #5
How Record and Playback stacks up!
1. Limited improvement of software quality
2. Bugs (Defects) detected during testing
SDLC Phase
3. Added risk of script re-factoring
4. Very easy to create scripts – but time
consuming for maintaining scripts
5. This approach will increase the time and
cost of developing an enterprise solution
TekLink International Slide #6
Gen 2 – Data Driven
• Used when there is a high reliance on data
with a low number of scripts
• Often used in performance testing or test
data creation/seeding
Record
Test Case
Externalise
Data inputs
Playback
TekLink International Slide #7
How Data Driven stacks up!
1. Improved quality for repetitive testing
2. Bugs (Defects) detected during testing SDLC
phase
3. Reduced risk by greater test coverage in low
path systems
4. Easy to create scripts maintain small set of test
cases
5. Can result in reduced testing cost and duration
TekLink International Slide #8
Gen 3 – Key Word Driven
• Also Called Table Driven testing
• Screens are broken into objects, actions and data
• This is a test team centric approach to test
automation
TekLink International Slide #9
How Keyword Driven Stacks Up!
1. Can improve software quality
2. If used in unit testing – can result in earlier
detection of defects
3. If implemented correctly – will reduce project risk
4. Easy to maintain – however requires an
understanding of coding to maintain
5. If implemented at the development phase of the
project – this approach can reduce over cost
and time of the project
TekLink International Slide #10
Gen 3 – Function Driven
• Often called Modular or process driven testing
• Separate each screen into a set of functions
• Test cases become a set of high level functions
• Page objects are a good example of Functional
Driven
Login
Select
Category Select Item Add to cart
TekLink International Slide #11
How Function Driven Stacks Up!
1. Can improve software quality
2. If used in unit testing – can result in earlier
detection of defects
3. If implemented correctly – will reduce project risk
4. Easy to maintain – however requires an
understanding of coding to maintain
5. If implemented at the development phase of the
project – this approach can reduce over cost
and time of the project
TekLink International Slide #12
Gen 4 – Behaviour Driven
Write
acceptance
criteria
Develop
code
Automate
tests
(acceptance
criteria)
Run test
Check in
code only
after all test
passed
• Better known as BDD
(Behaviour Driven Development)
• Encompasses the entire team to drive
continuous automation, quality and
customer value
• Is part of the agile development process
TekLink International Slide #13
Acceptance Language
• User Stories are given acceptance criteria (written by
Business Analysts, Test Engineers and Developers)
– Given (Pre Condition)
– When (Test Action)
– Then (Test Result)
Scenario 1: Account in Credit
Given the account is in credit
And the card is valid
And the dispenser contains cash
When the customer requests cash
Then account is debited
And card is returned
And cash is dispensed
TekLink International Slide #14
How Behaviour Driven Stacks Up!
1. Software is continuously tested
2. Defects are detected at during analysis,
development and testing phase
3. If implemented correctly – will reduce project risk
4. Easy to maintain and organise (Maintained at
two levels – Technical and non-technical)
5. If implemented correctly – this framework will
reduce the over all cost of the project

More Related Content

PPTX
object oriented methodologies
PPTX
SHA- Secure hashing algorithm
PDF
Network security - OSI Security Architecture
PPTX
Data mining tasks
PPT
Aspect Oriented Software Development
PPTX
Evolutionary models
PPTX
And or graph
PPT
Groupware
object oriented methodologies
SHA- Secure hashing algorithm
Network security - OSI Security Architecture
Data mining tasks
Aspect Oriented Software Development
Evolutionary models
And or graph
Groupware

What's hot (20)

PPT
PPT
3.5 model based clustering
PPT
PPTX
Formal Approaches to SQA.pptx
PPTX
RMMM Plan
PPTX
Unit iv(simple code generator)
PPT
Multi Head, Multi Tape Turing Machine
PPTX
Finite automata-for-lexical-analysis
PDF
Classical encryption techniques
PPTX
Loop optimization
PPTX
Unified process model
PPTX
Turing machine-TOC
PDF
linear classification
PPTX
Handheld operting system
PPTX
Double DES & Triple DES
PPTX
sum of subset problem using Backtracking
PPTX
Quality and productivity factors
PPT
Chapter 15 software product metrics
PPTX
Peephole Optimization
PPTX
Algorithm and pseudocode conventions
3.5 model based clustering
Formal Approaches to SQA.pptx
RMMM Plan
Unit iv(simple code generator)
Multi Head, Multi Tape Turing Machine
Finite automata-for-lexical-analysis
Classical encryption techniques
Loop optimization
Unified process model
Turing machine-TOC
linear classification
Handheld operting system
Double DES & Triple DES
sum of subset problem using Backtracking
Quality and productivity factors
Chapter 15 software product metrics
Peephole Optimization
Algorithm and pseudocode conventions
Ad

Similar to The four generations of test automation (20)

PPTX
Load and Performance tests in agile scrum framework SGI 2013
PPTX
Beating the product credit crunch
PDF
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
PDF
Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...
PDF
Software Development Lifecycle Presentation
PPTX
Developer + tester = quality++
PPTX
Product quality in agile project
PPTX
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2
PPTX
Test-Driven-Development.pptx
PPTX
"X" Driven-Development Methodologies
PPTX
The Waterfall Model
PPTX
Code campiasi scm-project-gabriel-cristescu-ditech
PDF
PDF
PDF
Innovations and adaptations in agile testing
PPT
ISTQBCH2.ppt
PPT
ISTQBCH2.ppt
PPS
Estimating test effort part 1 of 2
PPTX
Acceptance Test Driven Development
PPT
System Development Life Cycle Overview.ppt
Load and Performance tests in agile scrum framework SGI 2013
Beating the product credit crunch
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...
Software Development Lifecycle Presentation
Developer + tester = quality++
Product quality in agile project
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2
Test-Driven-Development.pptx
"X" Driven-Development Methodologies
The Waterfall Model
Code campiasi scm-project-gabriel-cristescu-ditech
Innovations and adaptations in agile testing
ISTQBCH2.ppt
ISTQBCH2.ppt
Estimating test effort part 1 of 2
Acceptance Test Driven Development
System Development Life Cycle Overview.ppt
Ad

Recently uploaded (20)

PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Approach and Philosophy of On baking technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Machine learning based COVID-19 study performance prediction
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Empathic Computing: Creating Shared Understanding
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
Big Data Technologies - Introduction.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Cloud computing and distributed systems.
Advanced methodologies resolving dimensionality complications for autism neur...
“AI and Expert System Decision Support & Business Intelligence Systems”
Approach and Philosophy of On baking technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf
cuic standard and advanced reporting.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Machine learning based COVID-19 study performance prediction
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Mobile App Security Testing_ A Comprehensive Guide.pdf
The AUB Centre for AI in Media Proposal.docx
Empathic Computing: Creating Shared Understanding
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Understanding_Digital_Forensics_Presentation.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Spectral efficient network and resource selection model in 5G networks
Digital-Transformation-Roadmap-for-Companies.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Big Data Technologies - Introduction.pptx
Unlocking AI with Model Context Protocol (MCP)
Cloud computing and distributed systems.

The four generations of test automation

  • 1. The Four Generations of Test Automation April 2013 By Renard Vardy TekLink International Pty Ltd renard.vardy@teklinkinternational.com
  • 2. TekLink International Slide #2 The Goal 1. Improve Software quality 2. Early detection of bugs (Defects) 3. Reduce (not introduce) project risk 4. Easy to write and maintain by BA, Testing and technical resources 5. Reduced cost and time of development
  • 3. TekLink International Slide #3 Contents Record and playback Data Driven Key Word Driven Behaviour Driven Function Driven 1st Gen 2nd Gen 3rd Gen 4th Gen
  • 4. TekLink International Slide #4 Gen 1 – Record and Playback • The easiest framework to implement • The framework pushed by tool vendors • The framework I use to teach students how to use a test automation tool Record Test Case Play Back Test Case
  • 5. TekLink International Slide #5 How Record and Playback stacks up! 1. Limited improvement of software quality 2. Bugs (Defects) detected during testing SDLC Phase 3. Added risk of script re-factoring 4. Very easy to create scripts – but time consuming for maintaining scripts 5. This approach will increase the time and cost of developing an enterprise solution
  • 6. TekLink International Slide #6 Gen 2 – Data Driven • Used when there is a high reliance on data with a low number of scripts • Often used in performance testing or test data creation/seeding Record Test Case Externalise Data inputs Playback
  • 7. TekLink International Slide #7 How Data Driven stacks up! 1. Improved quality for repetitive testing 2. Bugs (Defects) detected during testing SDLC phase 3. Reduced risk by greater test coverage in low path systems 4. Easy to create scripts maintain small set of test cases 5. Can result in reduced testing cost and duration
  • 8. TekLink International Slide #8 Gen 3 – Key Word Driven • Also Called Table Driven testing • Screens are broken into objects, actions and data • This is a test team centric approach to test automation
  • 9. TekLink International Slide #9 How Keyword Driven Stacks Up! 1. Can improve software quality 2. If used in unit testing – can result in earlier detection of defects 3. If implemented correctly – will reduce project risk 4. Easy to maintain – however requires an understanding of coding to maintain 5. If implemented at the development phase of the project – this approach can reduce over cost and time of the project
  • 10. TekLink International Slide #10 Gen 3 – Function Driven • Often called Modular or process driven testing • Separate each screen into a set of functions • Test cases become a set of high level functions • Page objects are a good example of Functional Driven Login Select Category Select Item Add to cart
  • 11. TekLink International Slide #11 How Function Driven Stacks Up! 1. Can improve software quality 2. If used in unit testing – can result in earlier detection of defects 3. If implemented correctly – will reduce project risk 4. Easy to maintain – however requires an understanding of coding to maintain 5. If implemented at the development phase of the project – this approach can reduce over cost and time of the project
  • 12. TekLink International Slide #12 Gen 4 – Behaviour Driven Write acceptance criteria Develop code Automate tests (acceptance criteria) Run test Check in code only after all test passed • Better known as BDD (Behaviour Driven Development) • Encompasses the entire team to drive continuous automation, quality and customer value • Is part of the agile development process
  • 13. TekLink International Slide #13 Acceptance Language • User Stories are given acceptance criteria (written by Business Analysts, Test Engineers and Developers) – Given (Pre Condition) – When (Test Action) – Then (Test Result) Scenario 1: Account in Credit Given the account is in credit And the card is valid And the dispenser contains cash When the customer requests cash Then account is debited And card is returned And cash is dispensed
  • 14. TekLink International Slide #14 How Behaviour Driven Stacks Up! 1. Software is continuously tested 2. Defects are detected at during analysis, development and testing phase 3. If implemented correctly – will reduce project risk 4. Easy to maintain and organise (Maintained at two levels – Technical and non-technical) 5. If implemented correctly – this framework will reduce the over all cost of the project