A quick presentation comparing the main five test automation frameworks:
Record and Playback
- Data Driven
- Keyword Driven
- Function Driven
- Behaviour Driven
Then presentation separates the frameworks into generation 1 to 3 and rates them against the goal of test automation.
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
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