Test Automation Fundamentals
Test Automation Fundamentals
Automation
Fundamentals
Mikó Szilárd
2016
EPAM
University Material 2
Blue-chip clients rely on EPAM
University Material 3
SCHEDULE
University Material 4
Agenda
1 Introduction
2 Approaches
4 Test Execution
University Material 5
Introduction
1 History
2 Motives
3 Advantages
4 Best Practices
6 Two disciplines
University Material 6
Feedback Control Mechanism
University Material 7
40s – Concept of Automation
University Material 8
Future of
Automation
University Material 9
Motives
300
Million
250
Source lines of code
history
200
150
100
50
0
1980 1990 2000 2010 2020
Car Operating system
University Material 10
Motives
RISK
University Material 11
Motives
University Material 12
Repeatable &
schedulable
Fast test
execution
Reliable
Increased
functional
coverage
Automatic
reporting
University Material 13
Best Practices
• Smoke testing
• Regression testing
University Material 14
Best Practices
University Material 15
Expectations and Reality
• Every team can use automation tools • Skills and training needed for success
University Material 16
Two disciplines
Test Automation
University Material 17
Approaches
5 Hybrid Testing
University Material 18
Linear scripting – Record and Playback
• Manual recording of each test step • Playing recorded test in the future
University Material 19
Linear scripting – Record and Playback
Advantages
– Later diagnosis
– Bug reproduction
University Material 20
Linear scripting – Record and Playback
Disadvantages
University Material 21
Linear scripting – Record and Playback
Improvements
University Material 22
Structured scripting - Library Architecture
• Create an abstraction layer for testing • Use control structures (conditionals, loops)
• Each module or function has its own test • Create a common library from reusable parts
scripts
• Build test cases using test functions
University Material 23
Structured scripting - Library Architecture
Advantages
• Scalable
University Material 24
Structured scripting - Library Architecture
Disadvantages
University Material 25
Data Driven Testing
• Storage options
University Material 26
Data Driven Testing
Advantages
University Material 27
Data Driven Testing
Disadvantages
University Material 28
Keyword/Table Driven Testing
keywords
University Material 29
Keyword/Table Driven Testing
Test design
Analyzing test basis Test case design Test data design
Manual execution
Automated execution
University Material 30
Keyword/Table Driven Testing
Advantages
University Material 31
Keyword/Table Driven Testing
Disadvantages
University Material 32
Hybrid Testing
University Material 33
“If it's not worth testing, why are you wasting
your time working on it?” - Scott Ambler
University Material 34
Test Driven Development
University Material 35
Test Driven Development
University Material 36
Test Driven Development
• Focuses on developers
– Runs fast
– Runs in isolation
– Easy to read and understand
– Uses real data
– Represents one step towards your overall goal
University Material 37
Acceptance Test Driven Development
University Material 38
Instead of „What should I test?”,
you might hear
„What’s the intended behavior?”.
- Neel Lakshminarayan
University Material 39
Behavior Driven Development
University Material 40
Behavior Driven Development
University Material 41
Behavior Driven Development
Scenario example
University Material 42
Tools and Frameworks
– Product installation
– API interaction
– GUI interaction
– Test execution
– Problem detection
– Defect logging
University Material 43
• An automation framework is not a • Frameworks put automation
tool which performs a specific task approaches into practice
University Material 45
Test Execution
1 Test Log
2 Error Log
3 Analyzing Results
4 Reporting
5 Metrics
University Material 46
Analyzing Results
– Test environment
– Application changes
– Test error
University Material 47
Metrics
University Material 48
Questions
University Material 49