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
Ad

More Related Content

What's hot (20)

Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
SivaprasanthRentala1975
 
Software Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsSoftware Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing Trends
KMS Technology
 
Developing a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian BayerDeveloping a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian Bayer
QA or the Highway
 
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
a34sharm
 
Importance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your ProjectImportance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your Project
Sarah Elson
 
Code Quality Lightning Talk
Code Quality Lightning TalkCode Quality Lightning Talk
Code Quality Lightning Talk
Jonathan Gregory
 
Best practices for test automation
Best practices for test automationBest practices for test automation
Best practices for test automation
David Tzemach
 
Test automation proposal
Test automation proposalTest automation proposal
Test automation proposal
Mihai-Cristian Fratila
 
Test automation
Test automationTest automation
Test automation
Xavier Yin
 
Automation testing
Automation testingAutomation testing
Automation testing
Biswajit Pratihari
 
How to Get Started with Cypress
How to Get Started with CypressHow to Get Started with Cypress
How to Get Started with Cypress
Applitools
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projects
sriks7
 
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil TayarCypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Applitools
 
Sonarqube
SonarqubeSonarqube
Sonarqube
Peerapat Asoktummarungsri
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
Naveen Kumar Singh
 
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Scrum gathering Paris 2013 -  test automation strategy for Scrum ProjectsScrum gathering Paris 2013 -  test automation strategy for Scrum Projects
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Eliane Collins
 
Test Automation in Agile
Test Automation in AgileTest Automation in Agile
Test Automation in Agile
Agile Testing Alliance
 
Cypress - Best Practices
Cypress - Best PracticesCypress - Best Practices
Cypress - Best Practices
Brian Mann
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
Archana Krushnan
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
Anirudh Raja
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
SivaprasanthRentala1975
 
Software Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsSoftware Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing Trends
KMS Technology
 
Developing a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian BayerDeveloping a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian Bayer
QA or the Highway
 
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
a34sharm
 
Importance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your ProjectImportance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your Project
Sarah Elson
 
Code Quality Lightning Talk
Code Quality Lightning TalkCode Quality Lightning Talk
Code Quality Lightning Talk
Jonathan Gregory
 
Best practices for test automation
Best practices for test automationBest practices for test automation
Best practices for test automation
David Tzemach
 
Test automation
Test automationTest automation
Test automation
Xavier Yin
 
How to Get Started with Cypress
How to Get Started with CypressHow to Get Started with Cypress
How to Get Started with Cypress
Applitools
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projects
sriks7
 
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil TayarCypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Applitools
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
Naveen Kumar Singh
 
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Scrum gathering Paris 2013 -  test automation strategy for Scrum ProjectsScrum gathering Paris 2013 -  test automation strategy for Scrum Projects
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Eliane Collins
 
Cypress - Best Practices
Cypress - Best PracticesCypress - Best Practices
Cypress - Best Practices
Brian Mann
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
Archana Krushnan
 

Viewers also liked (20)

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, automation
RIA 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 Testing
dversaci
 
Bdd and-testing
Bdd and-testingBdd and-testing
Bdd and-testing
malcolmt
 
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
 
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
 
Behavior Driven Development - Live Webinar
Behavior Driven Development - Live WebinarBehavior Driven Development - Live Webinar
Behavior Driven Development - Live Webinar
Belatrix Software
 
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
 
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
RIA 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 Testing
dversaci
 
Ad

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

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 Consluting
sarbajit 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_Ora
Vishal 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
 
Top Automated Testing Tools for 2024_ A Comprehensive Guide.pdf
Top Automated Testing Tools for 2024_ A Comprehensive Guide.pdfTop Automated Testing Tools for 2024_ A Comprehensive Guide.pdf
Top Automated Testing Tools for 2024_ A Comprehensive Guide.pdf
kalichargn70th171
 
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
 
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 Consluting
sarbajit 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_Ora
Vishal 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
 
Top Automated Testing Tools for 2024_ A Comprehensive Guide.pdf
Top Automated Testing Tools for 2024_ A Comprehensive Guide.pdfTop Automated Testing Tools for 2024_ A Comprehensive Guide.pdf
Top Automated Testing Tools for 2024_ A Comprehensive Guide.pdf
kalichargn70th171
 
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
 
Ad

Recently uploaded (20)

TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 

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