Making cross browser tests beautiful (v2 2017)

Meaghan Lewis
Meaghan LewisQuality Engineer at GitHub
MAKING
CROSS-BROWSER
TESTS
B f
Ask me about:
● Continuous deployment
● Scaling automation
● Life @ startups
● WHY
● HOW
● PROBLEMS
● SOLUTIONS
● LESSONS LEARNED
A
WHAT DO YOU WANT
TO GET OUT OF THIS
SESSION?
WHY ?
● Increase confidence your app works in all browsers
● Can easily test changes in browsers
● Save time from manually testing features
HOW ?
● Answer the following questions:
○ Which browsers will be supported?
○ What is the most important workflow to test?
○ How will the tests be run?
Write automated
tests for a student
loan refinance
application
TASK:
Making cross browser tests beautiful (v2 2017)
Making cross browser tests beautiful (v2 2017)
Don’t know how
application works in
other browsers
PROBLEM:
Making cross browser tests beautiful (v2 2017)
Making cross browser tests beautiful (v2 2017)
Implement
automated
cross-browser
tests
SOLUTION:
Step 1: Decide Supported Browsers
Step 1: Decide Supported Browsers
Step 2: Decide what to automate
● What is the most crucial
workflow to automate?
Step 3: Decide how to run tests
Step 3: Decide how to run tests
Step 4: Write some tests
Making cross browser tests beautiful (v2 2017)
IT SHOULD BE AS
EASY AS CHANGING
THE DRIVER, RIGHT?
PAGE ELEMENTS
PROBLEM
# 1
● Cannot interact with elements in the same way across
browsers
● Dropdowns, radio buttons and checkboxes are tricky
Element is not clickable
Making cross browser tests beautiful (v2 2017)
Alternate clicking methods
TIMING ISSUES
PROBLEM
# 2
● Need to wait for elements….
● Running tests locally vs running remotely
No Such Element
IMPLICIT WAITS
Wait for a set amount of time
EXPLICIT WAITS
Wait for an event up until a certain amount of time
DRIVER
CAPABILITIES
PROBLEM
# 3
● Drivers are managed separately
● Native capabilities differ
● Same functionality isn’t always available
FILE UPLOAD
The Safari Driver is implemented in JS and
does not have the privileges necessary to
manipulate an <input type = “file”> element.
Therefore, the SafariDriver does not
support file uploads.
RESOLUTION
● Maximize browser window
● Set a specific resolution at run-time
● Scroll an element into view
Making cross browser tests beautiful (v2 2017)
LESSONS
LEARNED
START TESTING
EARLY
MAKE YOUR TEST SCRIPTS
UNIVERSAL
USE WAITS AS
NEEDED
Run tests in CI
regularly
QUESTIONS?
LinkedIn: meaghan-lewis
Twitter: @iammeaghanlewis
Email: meaghan@lever.co
1 of 46

Recommended

Maintaining quality in open source by
Maintaining quality in open sourceMaintaining quality in open source
Maintaining quality in open sourceMeaghan Lewis
619 views39 slides
Software Development Life Cycle by
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycleprimeteacher32
1.2K views8 slides
Developer testing webinar by
Developer testing webinar Developer testing webinar
Developer testing webinar PractiTest
187 views27 slides
Treinamento TDD by
Treinamento TDDTreinamento TDD
Treinamento TDDDiego Caxito
392 views28 slides
Cherrypic 2016-agile-testing by
Cherrypic 2016-agile-testingCherrypic 2016-agile-testing
Cherrypic 2016-agile-testingLuis Franqueira
67 views19 slides
Applied craftsmanship by
Applied craftsmanshipApplied craftsmanship
Applied craftsmanshipAlexandru Bolboaca
616 views46 slides

More Related Content

What's hot

Methodology: IT test by
Methodology: IT testMethodology: IT test
Methodology: IT testJean-François Nguyen
160 views16 slides
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL by
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVALWHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVALAditi Sharma
144 views4 slides
Test Driven Development by
Test Driven DevelopmentTest Driven Development
Test Driven Developmentpmanvi
414 views28 slides
Teamleader testcon 2019 by
Teamleader testcon 2019Teamleader testcon 2019
Teamleader testcon 2019Thomas Noë
105 views47 slides
Selenium as a trend by
Selenium as a trendSelenium as a trend
Selenium as a trendNataliya Holodiuk
774 views31 slides
TLC2018 Shyam Sunder: Legoizing Testing by
TLC2018 Shyam Sunder: Legoizing TestingTLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing TestingAnna Royzman
62 views26 slides

What's hot(18)

WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL by Aditi Sharma
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVALWHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
Aditi Sharma144 views
Test Driven Development by pmanvi
Test Driven DevelopmentTest Driven Development
Test Driven Development
pmanvi414 views
Teamleader testcon 2019 by Thomas Noë
Teamleader testcon 2019Teamleader testcon 2019
Teamleader testcon 2019
Thomas Noë105 views
TLC2018 Shyam Sunder: Legoizing Testing by Anna Royzman
TLC2018 Shyam Sunder: Legoizing TestingTLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing Testing
Anna Royzman62 views
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang by Agile đây Vietnam
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
Agile đây Vietnam1.6K views
The Holy Trinity of UI Testing by Diego Molina by Sauce Labs
The Holy Trinity of UI Testing by Diego MolinaThe Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego Molina
Sauce Labs248 views
TestBash: Quality Does Not Belong With the Tester! by Maaret Pyhäjärvi
TestBash: Quality Does Not Belong With the Tester!TestBash: Quality Does Not Belong With the Tester!
TestBash: Quality Does Not Belong With the Tester!
Maaret Pyhäjärvi924 views
Validate Documents with Automated Visual Testing by Demi Jiang
Validate Documents with Automated Visual TestingValidate Documents with Automated Visual Testing
Validate Documents with Automated Visual Testing
Demi Jiang388 views
Selenium Workshop 2015 by vodqasg
Selenium Workshop 2015Selenium Workshop 2015
Selenium Workshop 2015
vodqasg146 views
Critical Theory Unit Project Assessments by avalvona
Critical Theory Unit Project AssessmentsCritical Theory Unit Project Assessments
Critical Theory Unit Project Assessments
avalvona151 views
Continues Integration for Android by CODETE
Continues Integration for AndroidContinues Integration for Android
Continues Integration for Android
CODETE736 views
Difference between traditional and agile software development by DeepaThirumurugan
Difference between traditional and agile software developmentDifference between traditional and agile software development
Difference between traditional and agile software development
Delivering High Quality Software Through Agile by John Bristowe
Delivering High Quality Software Through AgileDelivering High Quality Software Through Agile
Delivering High Quality Software Through Agile
John Bristowe866 views

Similar to Making cross browser tests beautiful (v2 2017)

Making cross browser tests beautiful by
Making cross browser tests beautifulMaking cross browser tests beautiful
Making cross browser tests beautifulMeaghan Lewis
740 views34 slides
Kimberly Weeks Software Evaluation by
Kimberly Weeks Software EvaluationKimberly Weeks Software Evaluation
Kimberly Weeks Software Evaluationkeweeks9
407 views10 slides
[Product Release Highlight] Accelerate Your UX Research - Gaining Fast & Flex... by
[Product Release Highlight] Accelerate Your UX Research - Gaining Fast & Flex...[Product Release Highlight] Accelerate Your UX Research - Gaining Fast & Flex...
[Product Release Highlight] Accelerate Your UX Research - Gaining Fast & Flex...UserZoom
159 views23 slides
8220 sad inquiry by
8220 sad inquiry8220 sad inquiry
8220 sad inquirybbass03
1K views11 slides
Building a better User Experience for Windows Phone Users by
Building a better User Experience for Windows Phone UsersBuilding a better User Experience for Windows Phone Users
Building a better User Experience for Windows Phone UsersSandra González
482 views28 slides
Workshop Stanford University - 28th July 2018 on Website Optimization by
Workshop Stanford University - 28th July 2018 on Website Optimization  Workshop Stanford University - 28th July 2018 on Website Optimization
Workshop Stanford University - 28th July 2018 on Website Optimization Raj Lal
847 views121 slides

Similar to Making cross browser tests beautiful (v2 2017)(20)

Making cross browser tests beautiful by Meaghan Lewis
Making cross browser tests beautifulMaking cross browser tests beautiful
Making cross browser tests beautiful
Meaghan Lewis740 views
Kimberly Weeks Software Evaluation by keweeks9
Kimberly Weeks Software EvaluationKimberly Weeks Software Evaluation
Kimberly Weeks Software Evaluation
keweeks9407 views
[Product Release Highlight] Accelerate Your UX Research - Gaining Fast & Flex... by UserZoom
[Product Release Highlight] Accelerate Your UX Research - Gaining Fast & Flex...[Product Release Highlight] Accelerate Your UX Research - Gaining Fast & Flex...
[Product Release Highlight] Accelerate Your UX Research - Gaining Fast & Flex...
UserZoom159 views
8220 sad inquiry by bbass03
8220 sad inquiry8220 sad inquiry
8220 sad inquiry
bbass031K views
Building a better User Experience for Windows Phone Users by Sandra González
Building a better User Experience for Windows Phone UsersBuilding a better User Experience for Windows Phone Users
Building a better User Experience for Windows Phone Users
Sandra González482 views
Workshop Stanford University - 28th July 2018 on Website Optimization by Raj Lal
Workshop Stanford University - 28th July 2018 on Website Optimization  Workshop Stanford University - 28th July 2018 on Website Optimization
Workshop Stanford University - 28th July 2018 on Website Optimization
Raj Lal847 views
How to Master UserZoom’s Latest Study Builder & Extract Meaningful UX Insights by UserZoom
How to Master UserZoom’s Latest Study Builder & Extract Meaningful UX InsightsHow to Master UserZoom’s Latest Study Builder & Extract Meaningful UX Insights
How to Master UserZoom’s Latest Study Builder & Extract Meaningful UX Insights
UserZoom550 views
Developers Border Line: Unit Testing by Sikandar Ahmed
Developers Border Line: Unit TestingDevelopers Border Line: Unit Testing
Developers Border Line: Unit Testing
Sikandar Ahmed1.7K views
Don't lose revenue. Go viral with no downtime. by WP Engine
Don't lose revenue. Go viral with no downtime.Don't lose revenue. Go viral with no downtime.
Don't lose revenue. Go viral with no downtime.
WP Engine629 views
Kw software evaulation by keweeks9
Kw software evaulationKw software evaulation
Kw software evaulation
keweeks9208 views
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr... by CodeScience
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...
CodeScience76 views
Beginners guide to testing and optimising a website.pdf by Carme Mias
Beginners guide to testing and optimising a website.pdfBeginners guide to testing and optimising a website.pdf
Beginners guide to testing and optimising a website.pdf
Carme Mias3 views
Optimizing Websites for Great User Experiences and Increased Conversions by WP Engine
Optimizing Websites for Great User Experiences and Increased ConversionsOptimizing Websites for Great User Experiences and Increased Conversions
Optimizing Websites for Great User Experiences and Increased Conversions
WP Engine1.2K views
How to establish ways of working that allows shifting-left of the automation ... by Max Barrass
How to establish ways of working that allows shifting-left of the automation ...How to establish ways of working that allows shifting-left of the automation ...
How to establish ways of working that allows shifting-left of the automation ...
Max Barrass95 views
Software Testing Interview Q&A – part 1 by Khoa Bui
Software Testing Interview Q&A – part 1Software Testing Interview Q&A – part 1
Software Testing Interview Q&A – part 1
Khoa Bui379 views

Recently uploaded

DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge... by
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...Deltares
16 views12 slides
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon by
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - AfternoonDSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - AfternoonDeltares
13 views43 slides
Citi TechTalk Session 2: Kafka Deep Dive by
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Diveconfluent
17 views60 slides
What Can Employee Monitoring Software Do?​ by
What Can Employee Monitoring Software Do?​What Can Employee Monitoring Software Do?​
What Can Employee Monitoring Software Do?​wAnywhere
21 views11 slides
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ... by
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...Deltares
9 views32 slides
Tridens DevOps by
Tridens DevOpsTridens DevOps
Tridens DevOpsTridens
9 views28 slides

Recently uploaded(20)

DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge... by Deltares
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
Deltares16 views
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon by Deltares
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - AfternoonDSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon
Deltares13 views
Citi TechTalk Session 2: Kafka Deep Dive by confluent
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
confluent17 views
What Can Employee Monitoring Software Do?​ by wAnywhere
What Can Employee Monitoring Software Do?​What Can Employee Monitoring Software Do?​
What Can Employee Monitoring Software Do?​
wAnywhere21 views
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ... by Deltares
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
Deltares9 views
Tridens DevOps by Tridens
Tridens DevOpsTridens DevOps
Tridens DevOps
Tridens9 views
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)... by Deltares
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
Deltares9 views
Software testing company in India.pptx by SakshiPatel82
Software testing company in India.pptxSoftware testing company in India.pptx
Software testing company in India.pptx
SakshiPatel827 views
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ... by Donato Onofri
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Donato Onofri711 views
A first look at MariaDB 11.x features and ideas on how to use them by Federico Razzoli
A first look at MariaDB 11.x features and ideas on how to use themA first look at MariaDB 11.x features and ideas on how to use them
A first look at MariaDB 11.x features and ideas on how to use them
Federico Razzoli45 views
Software evolution understanding: Automatic extraction of software identifier... by Ra'Fat Al-Msie'deen
Software evolution understanding: Automatic extraction of software identifier...Software evolution understanding: Automatic extraction of software identifier...
Software evolution understanding: Automatic extraction of software identifier...
Fleet Management Software in India by Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable11 views
Neo4j y GenAI by Neo4j
Neo4j y GenAI Neo4j y GenAI
Neo4j y GenAI
Neo4j42 views
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports by Ra'Fat Al-Msie'deen
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut... by HCLSoftware
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...
HCLSoftware6 views
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx by animuscrm
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
animuscrm13 views
Roadmap y Novedades de producto by Neo4j
Roadmap y Novedades de productoRoadmap y Novedades de producto
Roadmap y Novedades de producto
Neo4j50 views
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023 by Icinga
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Icinga38 views

Making cross browser tests beautiful (v2 2017)