SlideShare a Scribd company logo
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Agile Testing, Test
Automation & BDD
OCTOBER 25, 2016
SINGAPORE
ORGANIZED BY TESTINGMIND
1
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
About Myself
Quick Bio: “Test Automation Consultant having more than 11 years of experience in Software
Automated Testing space.”
Twitter: @sahajamait
Github: https://github.com/sahajamit
P.S. : All the opinions given in this talk are completely personal and has nothing to do with my
employer.
2
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Talk Abstract:
“What goes into the selection of right Test Automation Framework for your
application? the Application type (Mobile, Desktop, Web), the scripting
language(Java, Ruby, Python) or the tools (Selenium, Appium, UFT). No,
there are many more factors to consider before finalising your “ideal”
automation framework and if you get this decision wrong then it can have
a cascading effect to your entire test strategy. In this rapidly changing
Agile environment, the automation framework should be extremely
flexible and agnostic of external factors like tools and languages. In this
talk we will be covering this subject more deeply with some real life
examples.”
3
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Automation Frameworks – Assumptions,
Concepts and Tools
4
By : Amit Rawat
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Who can help you to build your Test
Automation Framework ??
Some Assumptions:
● Why to build (already so many open-source frameworks available)
● I will hire a Selenium/Automation Architect
● I will buy a Licensed tool
5
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Who can help you to build your Test
Automation Framework ??
Reality:
6
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
How easy is to design your Automation
Framework
Google yield more than million results for the query “Test
Automation Framework”
7
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Automation Frameworks – Assumptions,
Concepts and Tools
What is a Test Automation Framework?
It is a supporting structure or a harness that provides a conducive environment
to execute and maintain the automation scripts effectively. It defines a single
standard of doing things which can result in highly-reusable automation
scripts and that can lead to very low cost of maintenance.
8
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Some common types of Automation
Frameworks
▶ Linear
▶ Test Script Modularity
▶ Keyword-driven
▶ Behavior-driven(BDD)
▶ Hybrid
▶ Agile Automation Framework
9
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Keyword Driven Approach
(Script Less Automation)
10
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Data Driven Approach
11
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Behavior Driven Approach (BDD) :
Functionality Driven
12
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Behavior Driven Approach (BDD) :
Data Driven
13
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Automating the UI or Automating the
FUnctionality ??
UI/UX Functionality/Workflow
14
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Same Test Across Platforms
15
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Automation Pyramid - Current State
16
Manual Tests
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Automation Pyramid :
Ideal State
Image Credit:
http://martinfowler.com/bliki/TestPyramid.html
17
Manual Tests
X-UNIT
Tests
API/Service
UI
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Automation Pyramid :
Achievable State
18
UI Tests
API/Service
Tests
Manual
Tests
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Automation Paradigm: UI Interaction
19
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
New Paradigm: Automation Robots
(Tapster)
20
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Things to consider before designing your
Framework
▶ Progressive Test Automation / Agile Test Automation
▶ Types of testing to be supported: Functional and Non-Functional
▶ Parallel execution
▶ Application Interfaces to be supported: Mobile, Web, Desktop, APIs.
▶ Operating System
▶ Reporting : Screenshots, Videos, Data, Logs
▶ Framework Interface: Web, Excel, Feature Files
▶ Tool / Language Independence
▶ Run via CI
▶ Design Patterns
▶ Automation Environment
21
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Parallel Execution & Automation
Environment
▶ Headless Execution
▶ Third party Automation Cloud (SauceLabs, BrowserStack,
AWS)
▶ Virtualization (VMs, Vagrant, Docker)
▶ Creating Test Environment on the fly (Docker, Kubernetes)
22
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Tool Agnostic Framework
▶ Abstraction on the tool specific commands
▶ Leveraging multiple tools beneath the framework layer for different types of
testing
▶ Web UI Testing - Selenium,AutoIT
▶ API Testing - RestAssured, SoapUI, Postman
▶ Data Reconciliation - google-diff-match,PDFBox,BeyondCompare
▶ Mobile App Testing - Appium, Calabash
▶ Network Testing - BMP
▶ Responsive Design Testing - Galen Framework
▶ Analytics Testing - Fiddler, CharlesProxy
▶ Security Testing - Burp
▶ Mainframe Testing - Jagacy, IBM PCOM
▶ Expose Domain Specific Language(DSL)
23
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Locator Strategy
▶ Multiple Locators
▶ Statistical Technique
▶ Artificial Intelligence
24
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Automation Design Patterns
▶ Page Object Model
▶ Page Factory Pattern
▶ Loadable component
▶ Builder
▶ Singleton
25
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Reporting
▶ Allure
▶ Masterthought
▶ Serenity
26
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Reporting
27
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Test Automation Framework Layers
28
Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016
Q & A
29

More Related Content

What's hot

Test Automation - Keytorc Approach
Test Automation - Keytorc Approach Test Automation - Keytorc Approach
Test Automation - Keytorc Approach
Keytorc Software Testing Services
 
Test Automation
Test AutomationTest Automation
Test Automation
rockoder
 
Agile QA and Testing process
Agile QA and Testing processAgile QA and Testing process
Agile QA and Testing process
Gloria Stoilova
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8a34sharm
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planningSivaprasanthRentala1975
 
Test automation framework
Test automation frameworkTest automation framework
Test automation framework
QACampus
 
Test Strategy
Test StrategyTest Strategy
Test Strategy
Zbyszek Mockun
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updated
Tharinda Liyanage
 
Exploratory testing workshop
Exploratory testing workshopExploratory testing workshop
Exploratory testing workshop
Anne-Marie Charrett
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategytharindakasun
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
Kari Kakkonen
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentation
Carl Bruiners
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projects
sriks7
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
suwalki24.pl
 
Insprint automation, build the culture
Insprint automation, build the cultureInsprint automation, build the culture
Insprint automation, build the culture
ShekharRamphal
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
Archana Krushnan
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
Ken McCorkell
 
Exploratory testing
Exploratory testingExploratory testing
Exploratory testingHuib Schoots
 

What's hot (20)

Test Automation - Keytorc Approach
Test Automation - Keytorc Approach Test Automation - Keytorc Approach
Test Automation - Keytorc Approach
 
Test Automation
Test AutomationTest Automation
Test Automation
 
Agile QA and Testing process
Agile QA and Testing processAgile QA and Testing process
Agile QA and Testing process
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
 
Test automation framework
Test automation frameworkTest automation framework
Test automation framework
 
Test Strategy
Test StrategyTest Strategy
Test Strategy
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updated
 
Exploratory testing workshop
Exploratory testing workshopExploratory testing workshop
Exploratory testing workshop
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentation
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projects
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
 
Insprint automation, build the culture
Insprint automation, build the cultureInsprint automation, build the culture
Insprint automation, build the culture
 
Automation Concepts
Automation ConceptsAutomation Concepts
Automation Concepts
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
QA Best Practices in Agile World_new
QA Best Practices in Agile World_newQA Best Practices in Agile World_new
QA Best Practices in Agile World_new
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
 
Exploratory testing
Exploratory testingExploratory testing
Exploratory testing
 

Viewers also liked

Selenium basic
Selenium basicSelenium basic
Selenium basic
Dasun Eranthika
 
Bdd and-testing
Bdd and-testingBdd and-testing
Bdd and-testing
malcolmt
 
Selenium topic 1- Selenium Basic
Selenium topic 1-  Selenium BasicSelenium topic 1-  Selenium Basic
Selenium topic 1- Selenium Basic
ITProfessional Academy
 
BDD in Automation Testing
BDD in Automation TestingBDD in Automation Testing
BDD in Automation Testing
Scrum Breakfast Vietnam
 
Serenity BDD Workshop - 9th March 2016
Serenity BDD Workshop - 9th March 2016Serenity BDD Workshop - 9th March 2016
Serenity BDD Workshop - 9th March 2016
vodqasg
 
Automated Tests in Agile based on Serenity BDD - Michał Szybalski
Automated Tests in Agile based on Serenity BDD - Michał SzybalskiAutomated Tests in Agile based on Serenity BDD - Michał Szybalski
Automated Tests in Agile based on Serenity BDD - Michał Szybalski
ŁódQA
 
Ui BDD Testing
Ui BDD TestingUi BDD Testing
Ui BDD Testing
Taras Kalapun
 
Selenium
SeleniumSelenium
Selenium
mdiliyazm
 
Serenity BDD - from executable specifications to living documentation
Serenity BDD - from executable specifications to living documentationSerenity BDD - from executable specifications to living documentation
Serenity BDD - from executable specifications to living documentation
Alex Soto
 
Selenium web driver
Selenium web driverSelenium web driver
Selenium web driver
Shobika Ramasubbarayalu
 
Behavior Driven Development - Live Webinar
Behavior Driven Development - Live WebinarBehavior Driven Development - Live Webinar
Behavior Driven Development - Live Webinar
Belatrix Software
 
Serenity-BDD training
Serenity-BDD trainingSerenity-BDD training
Serenity-BDD training
Savvycom Savvycom
 
Selenium topic 3 -Web Driver Basics
Selenium topic 3 -Web Driver BasicsSelenium topic 3 -Web Driver Basics
Selenium topic 3 -Web Driver Basics
ITProfessional Academy
 
Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...
QASymphony
 
Basic Selenium Training
Basic Selenium TrainingBasic Selenium Training
Basic Selenium Training
Dipesh Bhatewara
 
Smarter ways to do selenium automation @ work, Selenium, automation
Smarter ways to do selenium automation @ work, Selenium, automationSmarter ways to do selenium automation @ work, Selenium, automation
Smarter ways to do selenium automation @ work, Selenium, automationRIA RUI Society
 
Model-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next LevelModel-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next Level
Bob Binder
 
BDD testing with cucumber
BDD testing with cucumberBDD testing with cucumber
BDD testing with cucumber
Daniel Kummer
 
The New Gives and Takes in a testers role
The New Gives and Takes in a testers role The New Gives and Takes in a testers role
The New Gives and Takes in a testers role
Agile Testing Alliance
 
Behavior Driven Development (BDD) and Agile Testing
Behavior Driven Development (BDD) and Agile TestingBehavior Driven Development (BDD) and Agile Testing
Behavior Driven Development (BDD) and Agile Testingdversaci
 

Viewers also liked (20)

Selenium basic
Selenium basicSelenium basic
Selenium basic
 
Bdd and-testing
Bdd and-testingBdd and-testing
Bdd and-testing
 
Selenium topic 1- Selenium Basic
Selenium topic 1-  Selenium BasicSelenium topic 1-  Selenium Basic
Selenium topic 1- Selenium Basic
 
BDD in Automation Testing
BDD in Automation TestingBDD in Automation Testing
BDD in Automation Testing
 
Serenity BDD Workshop - 9th March 2016
Serenity BDD Workshop - 9th March 2016Serenity BDD Workshop - 9th March 2016
Serenity BDD Workshop - 9th March 2016
 
Automated Tests in Agile based on Serenity BDD - Michał Szybalski
Automated Tests in Agile based on Serenity BDD - Michał SzybalskiAutomated Tests in Agile based on Serenity BDD - Michał Szybalski
Automated Tests in Agile based on Serenity BDD - Michał Szybalski
 
Ui BDD Testing
Ui BDD TestingUi BDD Testing
Ui BDD Testing
 
Selenium
SeleniumSelenium
Selenium
 
Serenity BDD - from executable specifications to living documentation
Serenity BDD - from executable specifications to living documentationSerenity BDD - from executable specifications to living documentation
Serenity BDD - from executable specifications to living documentation
 
Selenium web driver
Selenium web driverSelenium web driver
Selenium web driver
 
Behavior Driven Development - Live Webinar
Behavior Driven Development - Live WebinarBehavior Driven Development - Live Webinar
Behavior Driven Development - Live Webinar
 
Serenity-BDD training
Serenity-BDD trainingSerenity-BDD training
Serenity-BDD training
 
Selenium topic 3 -Web Driver Basics
Selenium topic 3 -Web Driver BasicsSelenium topic 3 -Web Driver Basics
Selenium topic 3 -Web Driver Basics
 
Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...
 
Basic Selenium Training
Basic Selenium TrainingBasic Selenium Training
Basic Selenium Training
 
Smarter ways to do selenium automation @ work, Selenium, automation
Smarter ways to do selenium automation @ work, Selenium, automationSmarter ways to do selenium automation @ work, Selenium, automation
Smarter ways to do selenium automation @ work, Selenium, automation
 
Model-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next LevelModel-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next Level
 
BDD testing with cucumber
BDD testing with cucumberBDD testing with cucumber
BDD testing with cucumber
 
The New Gives and Takes in a testers role
The New Gives and Takes in a testers role The New Gives and Takes in a testers role
The New Gives and Takes in a testers role
 
Behavior Driven Development (BDD) and Agile Testing
Behavior Driven Development (BDD) and Agile TestingBehavior Driven Development (BDD) and Agile Testing
Behavior Driven Development (BDD) and Agile Testing
 

Similar to Test Automation Frameworks: Assumptions, Concepts & Tools

123 automation framework
123 automation framework123 automation framework
123 automation framework
bhumika2108
 
Sarbajit Resume - Delivery Manager QA - Test Automation Consluting
Sarbajit Resume - Delivery Manager QA - Test Automation ConslutingSarbajit Resume - Delivery Manager QA - Test Automation Consluting
Sarbajit Resume - Delivery Manager QA - Test Automation Conslutingsarbajit Chakrabarty
 
Agile testing - Principles and best practices
Agile testing  - Principles and best practicesAgile testing  - Principles and best practices
Agile testing - Principles and best practices
Dr Ganesh Iyer
 
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Applitools
 
A Modern Dive into QA Automation and Beyond
A Modern Dive into QA Automation and BeyondA Modern Dive into QA Automation and Beyond
A Modern Dive into QA Automation and Beyond
Pratik Patel
 
Advanced automated visual testing at DrupalCon Europe 2020
Advanced automated visual testing at DrupalCon Europe 2020Advanced automated visual testing at DrupalCon Europe 2020
Advanced automated visual testing at DrupalCon Europe 2020
Shweta Sharma
 
Appium workshop technopark trivandrum
Appium workshop technopark trivandrumAppium workshop technopark trivandrum
Appium workshop technopark trivandrum
Syam Sasi
 
Agile Testing 2020
Agile Testing 2020Agile Testing 2020
Agile Testing 2020
arzu TR
 
VishalSinha_Resume_Ora
VishalSinha_Resume_OraVishalSinha_Resume_Ora
VishalSinha_Resume_OraVishal Sinha
 
CookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomationCookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomation
Kazuaki Matsuo
 
AppSphere 2016 - Automate performance testing with AppDynamics using continuo...
AppSphere 2016 - Automate performance testing with AppDynamics using continuo...AppSphere 2016 - Automate performance testing with AppDynamics using continuo...
AppSphere 2016 - Automate performance testing with AppDynamics using continuo...
Brad Stoner
 
Functional and Non-functional Test automation
Functional and Non-functional Test automationFunctional and Non-functional Test automation
Functional and Non-functional Test automation
Dr Ganesh Iyer
 
AmitKulkarni-DevOpsTesting-AustralianTestingDays
AmitKulkarni-DevOpsTesting-AustralianTestingDaysAmitKulkarni-DevOpsTesting-AustralianTestingDays
AmitKulkarni-DevOpsTesting-AustralianTestingDays
Amit Kulkarni
 
Quality Built In @ Spotify
Quality Built In @ SpotifyQuality Built In @ Spotify
Quality Built In @ Spotify
Andrii Dzynia
 
AUG NYC June 12 - Event Presentations
AUG NYC June 12 - Event PresentationsAUG NYC June 12 - Event Presentations
AUG NYC June 12 - Event Presentations
Madhusudhan Matrubai
 
QA Role in Agile Teams
QA Role in Agile Teams QA Role in Agile Teams
QA Role in Agile Teams
Synerzip
 
DevOps at TestausOSY 20june2017
DevOps at TestausOSY 20june2017DevOps at TestausOSY 20june2017
DevOps at TestausOSY 20june2017
Jouni Jätyri
 
ATAGTR2017 Protractor Cucumber BDD Approach
ATAGTR2017 Protractor Cucumber BDD ApproachATAGTR2017 Protractor Cucumber BDD Approach
ATAGTR2017 Protractor Cucumber BDD Approach
Agile Testing Alliance
 
Suparna - XCUITest
Suparna - XCUITestSuparna - XCUITest
Suparna - XCUITest
SUPARNA KHAMARU
 
Manual Testing
Manual TestingManual Testing
Manual Testing
Gaurav Nigam
 

Similar to Test Automation Frameworks: Assumptions, Concepts & Tools (20)

123 automation framework
123 automation framework123 automation framework
123 automation framework
 
Sarbajit Resume - Delivery Manager QA - Test Automation Consluting
Sarbajit Resume - Delivery Manager QA - Test Automation ConslutingSarbajit Resume - Delivery Manager QA - Test Automation Consluting
Sarbajit Resume - Delivery Manager QA - Test Automation Consluting
 
Agile testing - Principles and best practices
Agile testing  - Principles and best practicesAgile testing  - Principles and best practices
Agile testing - Principles and best practices
 
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
 
A Modern Dive into QA Automation and Beyond
A Modern Dive into QA Automation and BeyondA Modern Dive into QA Automation and Beyond
A Modern Dive into QA Automation and Beyond
 
Advanced automated visual testing at DrupalCon Europe 2020
Advanced automated visual testing at DrupalCon Europe 2020Advanced automated visual testing at DrupalCon Europe 2020
Advanced automated visual testing at DrupalCon Europe 2020
 
Appium workshop technopark trivandrum
Appium workshop technopark trivandrumAppium workshop technopark trivandrum
Appium workshop technopark trivandrum
 
Agile Testing 2020
Agile Testing 2020Agile Testing 2020
Agile Testing 2020
 
VishalSinha_Resume_Ora
VishalSinha_Resume_OraVishalSinha_Resume_Ora
VishalSinha_Resume_Ora
 
CookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomationCookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomation
 
AppSphere 2016 - Automate performance testing with AppDynamics using continuo...
AppSphere 2016 - Automate performance testing with AppDynamics using continuo...AppSphere 2016 - Automate performance testing with AppDynamics using continuo...
AppSphere 2016 - Automate performance testing with AppDynamics using continuo...
 
Functional and Non-functional Test automation
Functional and Non-functional Test automationFunctional and Non-functional Test automation
Functional and Non-functional Test automation
 
AmitKulkarni-DevOpsTesting-AustralianTestingDays
AmitKulkarni-DevOpsTesting-AustralianTestingDaysAmitKulkarni-DevOpsTesting-AustralianTestingDays
AmitKulkarni-DevOpsTesting-AustralianTestingDays
 
Quality Built In @ Spotify
Quality Built In @ SpotifyQuality Built In @ Spotify
Quality Built In @ Spotify
 
AUG NYC June 12 - Event Presentations
AUG NYC June 12 - Event PresentationsAUG NYC June 12 - Event Presentations
AUG NYC June 12 - Event Presentations
 
QA Role in Agile Teams
QA Role in Agile Teams QA Role in Agile Teams
QA Role in Agile Teams
 
DevOps at TestausOSY 20june2017
DevOps at TestausOSY 20june2017DevOps at TestausOSY 20june2017
DevOps at TestausOSY 20june2017
 
ATAGTR2017 Protractor Cucumber BDD Approach
ATAGTR2017 Protractor Cucumber BDD ApproachATAGTR2017 Protractor Cucumber BDD Approach
ATAGTR2017 Protractor Cucumber BDD Approach
 
Suparna - XCUITest
Suparna - XCUITestSuparna - XCUITest
Suparna - XCUITest
 
Manual Testing
Manual TestingManual Testing
Manual Testing
 

Recently uploaded

Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 

Recently uploaded (20)

Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 

Test Automation Frameworks: Assumptions, Concepts & Tools

  • 1. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Agile Testing, Test Automation & BDD OCTOBER 25, 2016 SINGAPORE ORGANIZED BY TESTINGMIND 1
  • 2. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 About Myself Quick Bio: “Test Automation Consultant having more than 11 years of experience in Software Automated Testing space.” Twitter: @sahajamait Github: https://github.com/sahajamit P.S. : All the opinions given in this talk are completely personal and has nothing to do with my employer. 2
  • 3. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Talk Abstract: “What goes into the selection of right Test Automation Framework for your application? the Application type (Mobile, Desktop, Web), the scripting language(Java, Ruby, Python) or the tools (Selenium, Appium, UFT). No, there are many more factors to consider before finalising your “ideal” automation framework and if you get this decision wrong then it can have a cascading effect to your entire test strategy. In this rapidly changing Agile environment, the automation framework should be extremely flexible and agnostic of external factors like tools and languages. In this talk we will be covering this subject more deeply with some real life examples.” 3
  • 4. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Automation Frameworks – Assumptions, Concepts and Tools 4 By : Amit Rawat
  • 5. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Who can help you to build your Test Automation Framework ?? Some Assumptions: ● Why to build (already so many open-source frameworks available) ● I will hire a Selenium/Automation Architect ● I will buy a Licensed tool 5
  • 6. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Who can help you to build your Test Automation Framework ?? Reality: 6
  • 7. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 How easy is to design your Automation Framework Google yield more than million results for the query “Test Automation Framework” 7
  • 8. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Automation Frameworks – Assumptions, Concepts and Tools What is a Test Automation Framework? It is a supporting structure or a harness that provides a conducive environment to execute and maintain the automation scripts effectively. It defines a single standard of doing things which can result in highly-reusable automation scripts and that can lead to very low cost of maintenance. 8
  • 9. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Some common types of Automation Frameworks ▶ Linear ▶ Test Script Modularity ▶ Keyword-driven ▶ Behavior-driven(BDD) ▶ Hybrid ▶ Agile Automation Framework 9
  • 10. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Keyword Driven Approach (Script Less Automation) 10
  • 11. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Data Driven Approach 11
  • 12. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Behavior Driven Approach (BDD) : Functionality Driven 12
  • 13. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Behavior Driven Approach (BDD) : Data Driven 13
  • 14. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Automating the UI or Automating the FUnctionality ?? UI/UX Functionality/Workflow 14
  • 15. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Same Test Across Platforms 15
  • 16. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Automation Pyramid - Current State 16 Manual Tests
  • 17. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Automation Pyramid : Ideal State Image Credit: http://martinfowler.com/bliki/TestPyramid.html 17 Manual Tests X-UNIT Tests API/Service UI
  • 18. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Automation Pyramid : Achievable State 18 UI Tests API/Service Tests Manual Tests
  • 19. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Automation Paradigm: UI Interaction 19
  • 20. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 New Paradigm: Automation Robots (Tapster) 20
  • 21. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Things to consider before designing your Framework ▶ Progressive Test Automation / Agile Test Automation ▶ Types of testing to be supported: Functional and Non-Functional ▶ Parallel execution ▶ Application Interfaces to be supported: Mobile, Web, Desktop, APIs. ▶ Operating System ▶ Reporting : Screenshots, Videos, Data, Logs ▶ Framework Interface: Web, Excel, Feature Files ▶ Tool / Language Independence ▶ Run via CI ▶ Design Patterns ▶ Automation Environment 21
  • 22. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Parallel Execution & Automation Environment ▶ Headless Execution ▶ Third party Automation Cloud (SauceLabs, BrowserStack, AWS) ▶ Virtualization (VMs, Vagrant, Docker) ▶ Creating Test Environment on the fly (Docker, Kubernetes) 22
  • 23. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Tool Agnostic Framework ▶ Abstraction on the tool specific commands ▶ Leveraging multiple tools beneath the framework layer for different types of testing ▶ Web UI Testing - Selenium,AutoIT ▶ API Testing - RestAssured, SoapUI, Postman ▶ Data Reconciliation - google-diff-match,PDFBox,BeyondCompare ▶ Mobile App Testing - Appium, Calabash ▶ Network Testing - BMP ▶ Responsive Design Testing - Galen Framework ▶ Analytics Testing - Fiddler, CharlesProxy ▶ Security Testing - Burp ▶ Mainframe Testing - Jagacy, IBM PCOM ▶ Expose Domain Specific Language(DSL) 23
  • 24. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Locator Strategy ▶ Multiple Locators ▶ Statistical Technique ▶ Artificial Intelligence 24
  • 25. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Automation Design Patterns ▶ Page Object Model ▶ Page Factory Pattern ▶ Loadable component ▶ Builder ▶ Singleton 25
  • 26. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Reporting ▶ Allure ▶ Masterthought ▶ Serenity 26
  • 27. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Reporting 27
  • 28. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Test Automation Framework Layers 28
  • 29. Agile Testing, Test Automation & BDD, Singapore www.testingmind.com October 25, 2016 Q & A 29