SlideShare a Scribd company logo
1 of 28
Download to read offline
To Automate or Not to Automate
5 Things to Consider when Building Your Test Automation Strategy
Dr Maciej Gryka
Agenda
1. Introduction
2. Creating a testing strategy
3. The knowns (unit testing, CI/CD, usability, pentesting)
4. The fuzzies: functional testing
5. Guidance on how things break
6. Final Takeaways
About Me
Maciej Gryka
Senior Manager
Rainforest QA
Maciej analyzes data and leads the science team at RainforestQA.
He enjoys solving data-related problems while defining roadmaps,
leading teams and projects, and planning releases. He’s currently
developing machine learning algorithms and helping define
Rainforest’s automation roadmap.
Specialities: R&D, Machine Learning
Quality Assurance, automation and dogma
- Quality Assurance is means to an end.
- Very few best practices work equally well for every team.
- Developing a QA strategy for your specific case is key.
- Automation might fit into this picture, but there are important caveats.
Creating a QA Strategy
- Do you even need one?
- What is and isn’t a good strategy?
- Think about the trade-offs.
- To incorporate automation into your
strategy, you need to know what to expect
down the line.
X
Some things have simple answers
- You should have code reviews.
- You should have decent unit test coverage.
- You should use CI and execute your unit tests before
every deployment.
- You should not ship code without tests.
- Automating accessibility/usability/penetration testing is
probably not a great idea.
Poll
Which is the best description of your current testing setup?
How much functional testing to automate
- When things get less clear is functional testing: while it’s possible to
automate it, it’s certainly not easy.
- In a way, functional testing is the essence: do things even work?
- It can be tricky to know how much to automate, because there are multiple
areas where you can spend your effort and they provide different return on
your investment depending on the scenario.
Testing ROI: 4 areas
Execute Triage MaintainBuild
Testing ROI: manual testing
Execute Triage MaintainBuild
Build
Testing ROI: automation
Execute Triage Maintain
Build
Testing ROI: RainforestQA
Execute Triage Maintain
Automated tests often break for similar reasons
- If you wrote Selenium (or similar) tests before, you probably know this.
- Failures repeat, e.g. it’s tricky to robustly specify how to find an element.
- Developing this intuition takes a lot of effort and it differs depending on your
background.
- We need a systematic way to talk about such problem.
- Scientists to the rescue!
Why do Record/Replay Tests of Web Applications Break?, Hammoudi et al., ICST 2016
Research methodology
1. Assemble a collection of web applications.
2. For each application, start with an early version.
3. Develop automated tests for that application version.
4. Update the app, running the tests at each update, recording and fixing
breakage reasons.
5. Convert the results into a taxonomy of failures, sorted by importance.
Why do Record/Replay Tests of Web Applications Break?, Hammoudi et al., ICST 2016
Automated tests often break for similar reasons
1. Element locators changes
2. Value changes
3. Page reloading
4. User session times
5. Pop-up windows
Why do Record/Replay Tests of Web Applications Break?, Hammoudi et al., ICST 2016
Breakage reason 1: locator changes
Breakage reason 1: locator changes
1. You need to find interface elements to interact with and verify them.
2. This is done using “locators” such as element type, id, CSS class etc.
3. Such locators often change, even when the appearance stays the same.
4. What looks the same to a human, might be very different to a testing script.
5. No easy way around this, fixing takes effort.
Breakage reason 2: value changes
Breakage reason 2: value changes
1. Verifying whether your application reacts appropriately to certain input and
produces the correct output: you need to assume certain values.
2. Your back-end will change (e.g. updated password requirements, adding a
new field to a form).
3. You will have to update your automation script accordingly.
Breakage reason 3: page reloads
Breakage reason 3: page reloads
1. All useful applications need to store some state. Very often, page reload
affects that state.
2. E.g. a reload might be necessary to update the UI or it might be critical for
the user to not reload until some requirement is met (did you ever partially fill
in a form only to lose progress by reloading by accident?).
3. The points at which reloads are necessary/dangerous change as your
developers work on the product.
4. The automation scripts need to be kept in sync, but it’s not always obvious.
Breakage reason 4: user session timing
Breakage reason 4: user session timing
1. In many cases, session timings are important: do you want to log out inactive
users after some time? Or remind someone that they’ve had items left in their
cart for a while?
2. Testing this is important too: affects security, conversion rates etc. and it’s
possible to automate.
3. As your implementation changes, your script will need to be updated as well.
Breakage reason 5: pop-ups
Breakage reason 5: pop-ups
1. Absence or presence of pop-ups is another common breakage reason.
2. We’ve seen many examples of this ourselves at Rainforest: newsletters,
promotions, support integrations etc. all produce pop-ups.
3. While they are easy to ignore for automation scripts (less so for humans!),
they can be on a critical path and therefore in need of testing.
4. Updating their triggers means updating the automation.
Poll
Which breakage reason do you encounter most often?
Final Takeaways
1. Develop your own testing strategy.
2. Cover the bases (e.g. unit tests, CI).
3. When automating tests, mind the maintenance costs and common pitfalls.
Thank you!
If you have additional questions, feel free to
reach out to me at maciej@rainforestqa.com

More Related Content

What's hot

Influence of emphasized automation in ci
Influence of emphasized automation in ciInfluence of emphasized automation in ci
Influence of emphasized automation in ciBugRaptors
 
Lessons Learned in a Continuously Developing Service-Oriented Architecture
Lessons Learned in a Continuously Developing Service-Oriented ArchitectureLessons Learned in a Continuously Developing Service-Oriented Architecture
Lessons Learned in a Continuously Developing Service-Oriented Architecturemdwheele
 
Agile Testing Dilemmas
Agile Testing DilemmasAgile Testing Dilemmas
Agile Testing DilemmasAman King
 
30 of the best free software test tools in 60 minutes by Jess Lancaster
30 of the best free software test tools in 60 minutes by Jess Lancaster30 of the best free software test tools in 60 minutes by Jess Lancaster
30 of the best free software test tools in 60 minutes by Jess LancasterQA or the Highway
 
Test Automation - Principles and Practices
Test Automation - Principles and PracticesTest Automation - Principles and Practices
Test Automation - Principles and PracticesAnand Bagmar
 
7 Deadly Sins of Agile Software Test Automation
7 Deadly Sins of Agile Software Test Automation7 Deadly Sins of Agile Software Test Automation
7 Deadly Sins of Agile Software Test AutomationAdrian Smith
 
Tool Support For Testing (Types of Test Tool)
Tool Support For Testing (Types of Test Tool)Tool Support For Testing (Types of Test Tool)
Tool Support For Testing (Types of Test Tool)sarahrambe
 
Defects in software testing
Defects in software testingDefects in software testing
Defects in software testingsandeepsingh2808
 
Effective specifications for agile teams
Effective specifications for agile teamsEffective specifications for agile teams
Effective specifications for agile teamsgojkoadzic
 
Testing in the Age of Machine Learning
Testing in the Age of Machine Learning Testing in the Age of Machine Learning
Testing in the Age of Machine Learning vinaya muralidharan
 
Test Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh DahalTest Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh DahalQA or the Highway
 
Test Automation Strategies For Agile
Test Automation Strategies For AgileTest Automation Strategies For Agile
Test Automation Strategies For AgileNaresh Jain
 
What is the difference between manual testing and automation testing
What is the difference between manual testing and automation testingWhat is the difference between manual testing and automation testing
What is the difference between manual testing and automation testingEr Mahednra Chauhan
 
Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)Anand Bagmar
 
User Acceptance Testing (Uat)
User Acceptance Testing (Uat)User Acceptance Testing (Uat)
User Acceptance Testing (Uat)Thomas Martin
 
User acceptance testing_(uat) 2013
User acceptance testing_(uat) 2013User acceptance testing_(uat) 2013
User acceptance testing_(uat) 2013Amrita Sinha
 
Top Agile Myths & Misconceptions
Top Agile Myths & MisconceptionsTop Agile Myths & Misconceptions
Top Agile Myths & MisconceptionsDavid Tzemach
 
Test cases for effective testing - part 1
Test cases for effective testing - part 1Test cases for effective testing - part 1
Test cases for effective testing - part 1Mona M. Abd El-Rahman
 
Presentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life CyclePresentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life CycleRajon
 

What's hot (20)

Influence of emphasized automation in ci
Influence of emphasized automation in ciInfluence of emphasized automation in ci
Influence of emphasized automation in ci
 
Lessons Learned in a Continuously Developing Service-Oriented Architecture
Lessons Learned in a Continuously Developing Service-Oriented ArchitectureLessons Learned in a Continuously Developing Service-Oriented Architecture
Lessons Learned in a Continuously Developing Service-Oriented Architecture
 
Agile Testing Dilemmas
Agile Testing DilemmasAgile Testing Dilemmas
Agile Testing Dilemmas
 
30 of the best free software test tools in 60 minutes by Jess Lancaster
30 of the best free software test tools in 60 minutes by Jess Lancaster30 of the best free software test tools in 60 minutes by Jess Lancaster
30 of the best free software test tools in 60 minutes by Jess Lancaster
 
Test Automation - Principles and Practices
Test Automation - Principles and PracticesTest Automation - Principles and Practices
Test Automation - Principles and Practices
 
7 Deadly Sins of Agile Software Test Automation
7 Deadly Sins of Agile Software Test Automation7 Deadly Sins of Agile Software Test Automation
7 Deadly Sins of Agile Software Test Automation
 
Tool Support For Testing (Types of Test Tool)
Tool Support For Testing (Types of Test Tool)Tool Support For Testing (Types of Test Tool)
Tool Support For Testing (Types of Test Tool)
 
Defects in software testing
Defects in software testingDefects in software testing
Defects in software testing
 
Effective specifications for agile teams
Effective specifications for agile teamsEffective specifications for agile teams
Effective specifications for agile teams
 
Testing in the Age of Machine Learning
Testing in the Age of Machine Learning Testing in the Age of Machine Learning
Testing in the Age of Machine Learning
 
Bug Advocacy
Bug AdvocacyBug Advocacy
Bug Advocacy
 
Test Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh DahalTest Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh Dahal
 
Test Automation Strategies For Agile
Test Automation Strategies For AgileTest Automation Strategies For Agile
Test Automation Strategies For Agile
 
What is the difference between manual testing and automation testing
What is the difference between manual testing and automation testingWhat is the difference between manual testing and automation testing
What is the difference between manual testing and automation testing
 
Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)
 
User Acceptance Testing (Uat)
User Acceptance Testing (Uat)User Acceptance Testing (Uat)
User Acceptance Testing (Uat)
 
User acceptance testing_(uat) 2013
User acceptance testing_(uat) 2013User acceptance testing_(uat) 2013
User acceptance testing_(uat) 2013
 
Top Agile Myths & Misconceptions
Top Agile Myths & MisconceptionsTop Agile Myths & Misconceptions
Top Agile Myths & Misconceptions
 
Test cases for effective testing - part 1
Test cases for effective testing - part 1Test cases for effective testing - part 1
Test cases for effective testing - part 1
 
Presentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life CyclePresentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life Cycle
 

Similar to WEBINAR: To Automate or Not to Automate

Test automation: Are Enterprises ready to bite the bullet?
Test automation: Are Enterprises ready to bite the bullet?Test automation: Are Enterprises ready to bite the bullet?
Test automation: Are Enterprises ready to bite the bullet?Aspire Systems
 
Use Automation to Assist—Not Replace—Manual Testing
Use Automation to Assist—Not Replace—Manual TestingUse Automation to Assist—Not Replace—Manual Testing
Use Automation to Assist—Not Replace—Manual TestingTechWell
 
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web TestingThe Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web TestingPerfecto by Perforce
 
Fundamental Of Testing
Fundamental Of TestingFundamental Of Testing
Fundamental Of Testingsuci maisaroh
 
Effective Testing fo Startups
Effective Testing fo StartupsEffective Testing fo Startups
Effective Testing fo StartupsTestnetic
 
Automation testing interview pdf org
Automation testing interview pdf orgAutomation testing interview pdf org
Automation testing interview pdf orgTestbytes
 
201008 Software Testing Notes (part 1/2)
201008 Software Testing Notes (part 1/2)201008 Software Testing Notes (part 1/2)
201008 Software Testing Notes (part 1/2)Javier Gonzalez-Sanchez
 
M. Holovaty, Концепции автоматизированного тестирования
M. Holovaty, Концепции автоматизированного тестированияM. Holovaty, Концепции автоматизированного тестирования
M. Holovaty, Концепции автоматизированного тестированияAlex
 
Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success TEST Huddle
 
5 Reasons Why Test Automation Can Fail.pdf
5 Reasons Why Test Automation Can Fail.pdf5 Reasons Why Test Automation Can Fail.pdf
5 Reasons Why Test Automation Can Fail.pdfAnanthReddy38
 
Creating testing tools to support development
Creating testing tools to support developmentCreating testing tools to support development
Creating testing tools to support developmentChema del Barco
 
Are you getting traction - Tales from the tech transfer trenches
Are you getting traction - Tales from the tech transfer trenchesAre you getting traction - Tales from the tech transfer trenches
Are you getting traction - Tales from the tech transfer trenchesSatish Chandra
 
Test Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back TomorrowTest Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back TomorrowTechWell
 
Automation Framework Design
Automation Framework DesignAutomation Framework Design
Automation Framework DesignKunal Saxena
 
Selenium - A Trending Automation Testing Tool
Selenium - A Trending Automation Testing ToolSelenium - A Trending Automation Testing Tool
Selenium - A Trending Automation Testing Toolijtsrd
 
Automation Responsibility
Automation ResponsibilityAutomation Responsibility
Automation ResponsibilityZbyszek Mockun
 
How to make Automation an asset for Organization
How to make Automation an asset for OrganizationHow to make Automation an asset for Organization
How to make Automation an asset for Organizationanuvip
 
Why Automation Fails—in Theory and Practice
Why Automation Fails—in Theory and PracticeWhy Automation Fails—in Theory and Practice
Why Automation Fails—in Theory and PracticeTechWell
 
The Leaders Guide to Getting Started with Automated Testing
The Leaders Guide to Getting Started with Automated TestingThe Leaders Guide to Getting Started with Automated Testing
The Leaders Guide to Getting Started with Automated TestingJames Briers
 

Similar to WEBINAR: To Automate or Not to Automate (20)

Test automation: Are Enterprises ready to bite the bullet?
Test automation: Are Enterprises ready to bite the bullet?Test automation: Are Enterprises ready to bite the bullet?
Test automation: Are Enterprises ready to bite the bullet?
 
Use Automation to Assist—Not Replace—Manual Testing
Use Automation to Assist—Not Replace—Manual TestingUse Automation to Assist—Not Replace—Manual Testing
Use Automation to Assist—Not Replace—Manual Testing
 
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web TestingThe Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
 
Fundamental Of Testing
Fundamental Of TestingFundamental Of Testing
Fundamental Of Testing
 
Effective Testing fo Startups
Effective Testing fo StartupsEffective Testing fo Startups
Effective Testing fo Startups
 
Automation testing interview pdf org
Automation testing interview pdf orgAutomation testing interview pdf org
Automation testing interview pdf org
 
201008 Software Testing Notes (part 1/2)
201008 Software Testing Notes (part 1/2)201008 Software Testing Notes (part 1/2)
201008 Software Testing Notes (part 1/2)
 
M. Holovaty, Концепции автоматизированного тестирования
M. Holovaty, Концепции автоматизированного тестированияM. Holovaty, Концепции автоматизированного тестирования
M. Holovaty, Концепции автоматизированного тестирования
 
Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success
 
5 Reasons Why Test Automation Can Fail.pdf
5 Reasons Why Test Automation Can Fail.pdf5 Reasons Why Test Automation Can Fail.pdf
5 Reasons Why Test Automation Can Fail.pdf
 
Simplify 3X
Simplify 3XSimplify 3X
Simplify 3X
 
Creating testing tools to support development
Creating testing tools to support developmentCreating testing tools to support development
Creating testing tools to support development
 
Are you getting traction - Tales from the tech transfer trenches
Are you getting traction - Tales from the tech transfer trenchesAre you getting traction - Tales from the tech transfer trenches
Are you getting traction - Tales from the tech transfer trenches
 
Test Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back TomorrowTest Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back Tomorrow
 
Automation Framework Design
Automation Framework DesignAutomation Framework Design
Automation Framework Design
 
Selenium - A Trending Automation Testing Tool
Selenium - A Trending Automation Testing ToolSelenium - A Trending Automation Testing Tool
Selenium - A Trending Automation Testing Tool
 
Automation Responsibility
Automation ResponsibilityAutomation Responsibility
Automation Responsibility
 
How to make Automation an asset for Organization
How to make Automation an asset for OrganizationHow to make Automation an asset for Organization
How to make Automation an asset for Organization
 
Why Automation Fails—in Theory and Practice
Why Automation Fails—in Theory and PracticeWhy Automation Fails—in Theory and Practice
Why Automation Fails—in Theory and Practice
 
The Leaders Guide to Getting Started with Automated Testing
The Leaders Guide to Getting Started with Automated TestingThe Leaders Guide to Getting Started with Automated Testing
The Leaders Guide to Getting Started with Automated Testing
 

Recently uploaded

The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...Call Girls in Nagpur High Profile
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdfKamal Acharya
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfKamal Acharya
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingrknatarajan
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 

Recently uploaded (20)

The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdf
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 

WEBINAR: To Automate or Not to Automate

  • 1. To Automate or Not to Automate 5 Things to Consider when Building Your Test Automation Strategy Dr Maciej Gryka
  • 2. Agenda 1. Introduction 2. Creating a testing strategy 3. The knowns (unit testing, CI/CD, usability, pentesting) 4. The fuzzies: functional testing 5. Guidance on how things break 6. Final Takeaways
  • 3. About Me Maciej Gryka Senior Manager Rainforest QA Maciej analyzes data and leads the science team at RainforestQA. He enjoys solving data-related problems while defining roadmaps, leading teams and projects, and planning releases. He’s currently developing machine learning algorithms and helping define Rainforest’s automation roadmap. Specialities: R&D, Machine Learning
  • 4. Quality Assurance, automation and dogma - Quality Assurance is means to an end. - Very few best practices work equally well for every team. - Developing a QA strategy for your specific case is key. - Automation might fit into this picture, but there are important caveats.
  • 5. Creating a QA Strategy - Do you even need one? - What is and isn’t a good strategy? - Think about the trade-offs. - To incorporate automation into your strategy, you need to know what to expect down the line. X
  • 6. Some things have simple answers - You should have code reviews. - You should have decent unit test coverage. - You should use CI and execute your unit tests before every deployment. - You should not ship code without tests. - Automating accessibility/usability/penetration testing is probably not a great idea.
  • 7. Poll Which is the best description of your current testing setup?
  • 8. How much functional testing to automate - When things get less clear is functional testing: while it’s possible to automate it, it’s certainly not easy. - In a way, functional testing is the essence: do things even work? - It can be tricky to know how much to automate, because there are multiple areas where you can spend your effort and they provide different return on your investment depending on the scenario.
  • 9. Testing ROI: 4 areas Execute Triage MaintainBuild
  • 10. Testing ROI: manual testing Execute Triage MaintainBuild
  • 13. Automated tests often break for similar reasons - If you wrote Selenium (or similar) tests before, you probably know this. - Failures repeat, e.g. it’s tricky to robustly specify how to find an element. - Developing this intuition takes a lot of effort and it differs depending on your background. - We need a systematic way to talk about such problem. - Scientists to the rescue! Why do Record/Replay Tests of Web Applications Break?, Hammoudi et al., ICST 2016
  • 14. Research methodology 1. Assemble a collection of web applications. 2. For each application, start with an early version. 3. Develop automated tests for that application version. 4. Update the app, running the tests at each update, recording and fixing breakage reasons. 5. Convert the results into a taxonomy of failures, sorted by importance. Why do Record/Replay Tests of Web Applications Break?, Hammoudi et al., ICST 2016
  • 15. Automated tests often break for similar reasons 1. Element locators changes 2. Value changes 3. Page reloading 4. User session times 5. Pop-up windows Why do Record/Replay Tests of Web Applications Break?, Hammoudi et al., ICST 2016
  • 16. Breakage reason 1: locator changes
  • 17. Breakage reason 1: locator changes 1. You need to find interface elements to interact with and verify them. 2. This is done using “locators” such as element type, id, CSS class etc. 3. Such locators often change, even when the appearance stays the same. 4. What looks the same to a human, might be very different to a testing script. 5. No easy way around this, fixing takes effort.
  • 18. Breakage reason 2: value changes
  • 19. Breakage reason 2: value changes 1. Verifying whether your application reacts appropriately to certain input and produces the correct output: you need to assume certain values. 2. Your back-end will change (e.g. updated password requirements, adding a new field to a form). 3. You will have to update your automation script accordingly.
  • 20. Breakage reason 3: page reloads
  • 21. Breakage reason 3: page reloads 1. All useful applications need to store some state. Very often, page reload affects that state. 2. E.g. a reload might be necessary to update the UI or it might be critical for the user to not reload until some requirement is met (did you ever partially fill in a form only to lose progress by reloading by accident?). 3. The points at which reloads are necessary/dangerous change as your developers work on the product. 4. The automation scripts need to be kept in sync, but it’s not always obvious.
  • 22. Breakage reason 4: user session timing
  • 23. Breakage reason 4: user session timing 1. In many cases, session timings are important: do you want to log out inactive users after some time? Or remind someone that they’ve had items left in their cart for a while? 2. Testing this is important too: affects security, conversion rates etc. and it’s possible to automate. 3. As your implementation changes, your script will need to be updated as well.
  • 25. Breakage reason 5: pop-ups 1. Absence or presence of pop-ups is another common breakage reason. 2. We’ve seen many examples of this ourselves at Rainforest: newsletters, promotions, support integrations etc. all produce pop-ups. 3. While they are easy to ignore for automation scripts (less so for humans!), they can be on a critical path and therefore in need of testing. 4. Updating their triggers means updating the automation.
  • 26. Poll Which breakage reason do you encounter most often?
  • 27. Final Takeaways 1. Develop your own testing strategy. 2. Cover the bases (e.g. unit tests, CI). 3. When automating tests, mind the maintenance costs and common pitfalls.
  • 28. Thank you! If you have additional questions, feel free to reach out to me at maciej@rainforestqa.com