SlideShare ist ein Scribd-Unternehmen logo
1 von 14
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

Weitere ähnliche Inhalte

Was ist angesagt?

Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factorsNancyBeaulah_R
 
Perception in artificial intelligence
Perception in artificial intelligencePerception in artificial intelligence
Perception in artificial intelligenceMinakshi Atre
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation TechniquesSanthi thi
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7koolkampus
 
Integration testing
Integration testingIntegration testing
Integration testingqueen jemila
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)Er. Shiva K. Shrestha
 
Line Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPUR
Line Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPURLine Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPUR
Line Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPURNA000000
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptxubaidullah75790
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design conceptssrijavel
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsSeema Kamble
 
Target language in compiler design
Target language in compiler designTarget language in compiler design
Target language in compiler designMuhammad Haroon
 
Basic blocks and flow graph in Compiler Construction
Basic blocks and flow graph in Compiler ConstructionBasic blocks and flow graph in Compiler Construction
Basic blocks and flow graph in Compiler ConstructionMuhammad Haroon
 
Slice Based testing and Object Oriented Testing
Slice Based testing and Object Oriented TestingSlice Based testing and Object Oriented Testing
Slice Based testing and Object Oriented Testingvarsha sharma
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process ModelsAhsan Rahim
 
Syntax directed translation
Syntax directed translationSyntax directed translation
Syntax directed translationAkshaya Arunan
 
Software Engineering Fundamentals
Software Engineering FundamentalsSoftware Engineering Fundamentals
Software Engineering FundamentalsRahul Sudame
 

Was ist angesagt? (20)

Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Perception in artificial intelligence
Perception in artificial intelligencePerception in artificial intelligence
Perception in artificial intelligence
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
 
Integration testing
Integration testingIntegration testing
Integration testing
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Line Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPUR
Line Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPURLine Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPUR
Line Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPUR
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
 
25 robotics
25 robotics25 robotics
25 robotics
 
Algorithmic Software Cost Modeling
Algorithmic Software Cost ModelingAlgorithmic Software Cost Modeling
Algorithmic Software Cost Modeling
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design concepts
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metrics
 
Target language in compiler design
Target language in compiler designTarget language in compiler design
Target language in compiler design
 
Chapter 2 software process models
Chapter 2   software process modelsChapter 2   software process models
Chapter 2 software process models
 
Basic blocks and flow graph in Compiler Construction
Basic blocks and flow graph in Compiler ConstructionBasic blocks and flow graph in Compiler Construction
Basic blocks and flow graph in Compiler Construction
 
Slice Based testing and Object Oriented Testing
Slice Based testing and Object Oriented TestingSlice Based testing and Object Oriented Testing
Slice Based testing and Object Oriented Testing
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Syntax directed translation
Syntax directed translationSyntax directed translation
Syntax directed translation
 
Software Engineering Fundamentals
Software Engineering FundamentalsSoftware Engineering Fundamentals
Software Engineering Fundamentals
 

Ähnlich wie The four generations of test automation

Load and Performance tests in agile scrum framework SGI 2013
Load and Performance tests in agile scrum framework SGI 2013Load and Performance tests in agile scrum framework SGI 2013
Load and Performance tests in agile scrum framework SGI 2013Subrahmaniam S.R.V
 
Beating the product credit crunch
Beating the product credit crunchBeating the product credit crunch
Beating the product credit crunchStephen Williams
 
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learnedSwiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learnedMichael Palotas
 
Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...
Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...
Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...India Scrum Enthusiasts Community
 
Developer + tester = quality++
Developer + tester = quality++Developer + tester = quality++
Developer + tester = quality++Mikalai Alimenkou
 
Product quality in agile project
Product quality in agile projectProduct quality in agile project
Product quality in agile projectNhan Nguyen
 
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2
Se 381 -  lec 28 -- 34 - 12 jun12 - testing 1 of 2Se 381 -  lec 28 -- 34 - 12 jun12 - testing 1 of 2
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2babak danyal
 
Test-Driven-Development.pptx
Test-Driven-Development.pptxTest-Driven-Development.pptx
Test-Driven-Development.pptxdheeraj438799
 
"X" Driven-Development Methodologies
"X" Driven-Development Methodologies"X" Driven-Development Methodologies
"X" Driven-Development MethodologiesDamian T. Gordon
 
Code campiasi scm-project-gabriel-cristescu-ditech
Code campiasi scm-project-gabriel-cristescu-ditechCode campiasi scm-project-gabriel-cristescu-ditech
Code campiasi scm-project-gabriel-cristescu-ditechCodecamp Romania
 
Innovations and adaptations in agile testing
Innovations and adaptations in agile testingInnovations and adaptations in agile testing
Innovations and adaptations in agile testingSubrahmaniam S.R.V
 
ISTQBCH2.ppt
ISTQBCH2.pptISTQBCH2.ppt
ISTQBCH2.pptghkadous
 
Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Ian McDonald
 
Acceptance Test Driven Development
Acceptance Test Driven DevelopmentAcceptance Test Driven Development
Acceptance Test Driven DevelopmentMike Douglas
 
System Development Life Cycle Overview.ppt
System Development Life Cycle Overview.pptSystem Development Life Cycle Overview.ppt
System Development Life Cycle Overview.pptKENNEDYDONATO1
 
201008 Software Testing Notes (part 1/2)
201008 Software Testing Notes (part 1/2)201008 Software Testing Notes (part 1/2)
201008 Software Testing Notes (part 1/2)Javier Gonzalez-Sanchez
 

Ähnlich wie The four generations of test automation (20)

Load and Performance tests in agile scrum framework SGI 2013
Load and Performance tests in agile scrum framework SGI 2013Load and Performance tests in agile scrum framework SGI 2013
Load and Performance tests in agile scrum framework SGI 2013
 
Beating the product credit crunch
Beating the product credit crunchBeating the product credit crunch
Beating the product credit crunch
 
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learnedSwiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
 
Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...
Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...
Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-s...
 
Developer + tester = quality++
Developer + tester = quality++Developer + tester = quality++
Developer + tester = quality++
 
Product quality in agile project
Product quality in agile projectProduct quality in agile project
Product quality in agile project
 
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2
Se 381 -  lec 28 -- 34 - 12 jun12 - testing 1 of 2Se 381 -  lec 28 -- 34 - 12 jun12 - testing 1 of 2
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2
 
Test-Driven-Development.pptx
Test-Driven-Development.pptxTest-Driven-Development.pptx
Test-Driven-Development.pptx
 
"X" Driven-Development Methodologies
"X" Driven-Development Methodologies"X" Driven-Development Methodologies
"X" Driven-Development Methodologies
 
The Waterfall Model
The Waterfall ModelThe Waterfall Model
The Waterfall Model
 
Code campiasi scm-project-gabriel-cristescu-ditech
Code campiasi scm-project-gabriel-cristescu-ditechCode campiasi scm-project-gabriel-cristescu-ditech
Code campiasi scm-project-gabriel-cristescu-ditech
 
Lect7
Lect7Lect7
Lect7
 
Lect7
Lect7Lect7
Lect7
 
Innovations and adaptations in agile testing
Innovations and adaptations in agile testingInnovations and adaptations in agile testing
Innovations and adaptations in agile testing
 
ISTQBCH2.ppt
ISTQBCH2.pptISTQBCH2.ppt
ISTQBCH2.ppt
 
ISTQBCH2.ppt
ISTQBCH2.pptISTQBCH2.ppt
ISTQBCH2.ppt
 
Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Estimating test effort part 1 of 2
Estimating test effort part 1 of 2
 
Acceptance Test Driven Development
Acceptance Test Driven DevelopmentAcceptance Test Driven Development
Acceptance Test Driven Development
 
System Development Life Cycle Overview.ppt
System Development Life Cycle Overview.pptSystem Development Life Cycle Overview.ppt
System Development Life Cycle Overview.ppt
 
201008 Software Testing Notes (part 1/2)
201008 Software Testing Notes (part 1/2)201008 Software Testing Notes (part 1/2)
201008 Software Testing Notes (part 1/2)
 

Kürzlich hochgeladen

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 

Kürzlich hochgeladen (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 

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