SlideShare a Scribd company logo
Your Framework
for Success
Introduction to JavaScript Testing at Scale
Open Source Program Office @saucelabs
Christian Bromann
@christian-bromann
@bromann
Daniel Graham
Sr. Software Engineer @saucelabs
—CARL SAGAN
“You have to know the past to understand the
present.”
2004 2007 2010 2013 2016 2019 ?
Simon
Stewart
created
WebDriver
05
Selenium and
WebDriver
merge into
Selenium-WebDriver
09
Jason
Huggins
(Sauce Labs
Co-Founder)
created
Selenium
04
Sauce Labs
was
founded
08
Cypress.io
was founded
15
WebDriver
becomes W3C
Recommendation
18
WebDriver BiDi
work initiated
19
1st Release of
Selenium-WebDriver
JS Bindings
1st Appium
Release
1st Testcafe
Release
1st Puppeteer
Release
Cypress
Public Beta
1st Playwright
Release
WHAT HAPPENED PREVIOUSLY...
1st Protractor
Release
1st WebdriverIO
Release
W3C WG starts
to spec
WebDriver
Protocol
12
*v2
Types of Tools
Conventional
Non-Standard
Conventional Tools
● based on the W3C WebDriver specification
● true cross browser automation
● browser and mobile support
● limited automation capabilities - QA focus
● Open governed open source projects with
long history and large communities
Non-Standard Tools
● custom (non-standardised) automation
○ based on browser APIs
○ or JavaScript emulation
● Limited cross browser support
● More automation capabilities - developer
focus
● Company baked and governed Open
Source projects
○ Cypress.io → Cypress
○ Testcafe → DevExpress
○ Playwright → Microsoft
○ Puppeteer → Google
Through the WebDriver
protocol
AUTOMATION STRATEGIES
WebdriverIO
Through WebDriver &
browser APIs
Selenium
Testcafe
Through Web
APIs
Puppeteer
Through browser APIs
Cypress.io
Through Web +
browser APIs
Playwright
Through custom /
modified browser APIs
3rd generation of automating
browsers
Official Web Standard
developed at W3C in a
common effort by all browser
vendors
Thoroughly tested as part of
the web platform test suite
Limited capabilities -
originally designed to
automate from the user POV
2nd generation of
automating browsers
Available in all browser
engines (Chromium/Gecko
and WebKit)
Accessible only in Chromium
and Firefox
Also used for debugging
purposes (e.g. Chrome
DevTools)
WAYS TO AUTOMATE A BROWSER
Browser APIs
Web APIs
1st generation of automating
(initially used by Selenium in
2004)
Provides full control of the
execution environment
Automation commands are
mostly emulated
Comes with limitations, e.g.
no switching windows or
cross origin iFrame support
WebDriver Protocol
●
●
●
●
●
●
●
●
●
●
●
●
Web APIs
Proxy
iFrame
3rd generation of automating
browsers
Official Web Standard
developed at W3C in a
common effort by all browser
vendors
Thoroughly tested as part of
the web platform test suite
Limited capabilities -
originally designed to
automate from the user POV
2nd generation of
automating browsers
Available in all browser
engines (Chromium/Gecko
and WebKit)
Accessible only in Chromium
and Firefox
Also used for debugging
purposes (e.g. Chrome
DevTools)
WAYS TO AUTOMATE A BROWSER
Browser APIs
Web APIs
1st generation of automating
(initially used by Selenium in
2004)
Provides full control of the
execution environment
Automation commands are
mostly emulated
Comes with limitations, e.g.
no switching windows or
cross origin iFrame support
WebDriver Protocol
●
●
●
●
●
●
●
●
●
●
●
●
Browser API
3rd generation of automating
browsers
Official Web Standard
developed at W3C in a
common effort by all browser
vendors
Thoroughly tested as part of
the web platform test suite
Limited capabilities -
originally designed to
automate from the user POV
2nd generation of
automating browsers
Available in all browser
engines (Chromium/Gecko
and WebKit)
Accessible only in Chromium
and Firefox
Also used for debugging
purposes (e.g. Chrome
DevTools)
WAYS TO AUTOMATE A BROWSER
Browser APIs
JavaScript APIs
1st generation of automating
(initially used by Selenium in
2004)
Provides full control of the
execution environment
Automation commands are
mostly emulated
Comes with limitations, e.g.
no switching windows or
cross origin iFrame support
WebDriver Protocol
●
●
●
●
●
●
●
●
●
●
●
●
Go to URL
Current WebDriver Protocol
done
200ms
Current WebDriver Protocol
CHALLENGES FOR CLOUD PROVIDER
CHALLENGES FOR CLOUD PROVIDER
CREDITS: This presentation template was created by
Slidesgo, including icons by Flaticon, infographics &
images by Freepik.
SAUCECTL
Sauce Testrunner Toolkit
$ npm install --save-dev saucectl
SauceCTL
Test Bundle
Dashboard
CREDITS: This presentation template was created by
Slidesgo, including icons by Flaticon, infographics &
images by Freepik.
Thank
you!
Any questions?
@christian-bromann
@bromann
Ad

Recommended

Continuous Testing and New Tools for Automation - Presentation from StarWest ...
Continuous Testing and New Tools for Automation - Presentation from StarWest ...
Sauce Labs
 
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
SOASTA
 
ATAGTR2017 Upgrading a mobile tester's weapons with advanced debugging
ATAGTR2017 Upgrading a mobile tester's weapons with advanced debugging
Agile Testing Alliance
 
Continuous Testing
Continuous Testing
SOASTA
 
Automation Testing Approach for Responsive Web Design
Automation Testing Approach for Responsive Web Design
Agile Testing Alliance
 
Make the Shift from Manual to Automation with Open Source
Make the Shift from Manual to Automation with Open Source
Perfecto by Perforce
 
CI/CD for mobile at HERE
CI/CD for mobile at HERE
Stefan Verhoeff
 
Automated Testing and Continuous Integration for Mobile Apps: Jenkins & Cloud...
Automated Testing and Continuous Integration for Mobile Apps: Jenkins & Cloud...
SOASTA
 
Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Ted Drake
 
ATAGTR2017 Wearable App Testing
ATAGTR2017 Wearable App Testing
Agile Testing Alliance
 
Managing Continuous Delivery of Mobile Apps - for the Enterprise
Managing Continuous Delivery of Mobile Apps - for the Enterprise
Sauce Labs
 
SecDevOps: The New Black of IT
SecDevOps: The New Black of IT
CloudPassage
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using Jenkins
CollabNet
 
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
Jennifer Finney
 
SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8
Rajwinder Singh
 
Continuous delivery - tools and techniques
Continuous delivery - tools and techniques
Mike McGarr
 
Continuous Testing
Continuous Testing
Karim Fanadka
 
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
Agile Testing Alliance
 
DevOps Architecture Design
DevOps Architecture Design
Agile Testing Alliance
 
CI back to basis
CI back to basis
Sergio Navarro Pino
 
OWASP AppSec EU - SecDevOps, a view from the trenches - Abhay Bhargav
OWASP AppSec EU - SecDevOps, a view from the trenches - Abhay Bhargav
Abhay Bhargav
 
Automated Testing in Continuous Change Management
Automated Testing in Continuous Change Management
Perforce
 
A Secure DevOps Journey
A Secure DevOps Journey
Sonatype
 
Appium vs Espresso and XCUI Test
Appium vs Espresso and XCUI Test
Perfecto by Perforce
 
Continuous Integration
Continuous Integration
drluckyspin
 
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
sandeep kumar gupta
 
Enabing DevOps in an SDN World
Enabing DevOps in an SDN World
Cisco DevNet
 
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Robert McDermott
 
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Shubham Joshi
 
Mastering Selenium WebDriver: A Comprehensive Tutorial with Real-World Examples
Mastering Selenium WebDriver: A Comprehensive Tutorial with Real-World Examples
jamescantor38
 

More Related Content

What's hot (20)

Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Ted Drake
 
ATAGTR2017 Wearable App Testing
ATAGTR2017 Wearable App Testing
Agile Testing Alliance
 
Managing Continuous Delivery of Mobile Apps - for the Enterprise
Managing Continuous Delivery of Mobile Apps - for the Enterprise
Sauce Labs
 
SecDevOps: The New Black of IT
SecDevOps: The New Black of IT
CloudPassage
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using Jenkins
CollabNet
 
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
Jennifer Finney
 
SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8
Rajwinder Singh
 
Continuous delivery - tools and techniques
Continuous delivery - tools and techniques
Mike McGarr
 
Continuous Testing
Continuous Testing
Karim Fanadka
 
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
Agile Testing Alliance
 
DevOps Architecture Design
DevOps Architecture Design
Agile Testing Alliance
 
CI back to basis
CI back to basis
Sergio Navarro Pino
 
OWASP AppSec EU - SecDevOps, a view from the trenches - Abhay Bhargav
OWASP AppSec EU - SecDevOps, a view from the trenches - Abhay Bhargav
Abhay Bhargav
 
Automated Testing in Continuous Change Management
Automated Testing in Continuous Change Management
Perforce
 
A Secure DevOps Journey
A Secure DevOps Journey
Sonatype
 
Appium vs Espresso and XCUI Test
Appium vs Espresso and XCUI Test
Perfecto by Perforce
 
Continuous Integration
Continuous Integration
drluckyspin
 
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
sandeep kumar gupta
 
Enabing DevOps in an SDN World
Enabing DevOps in an SDN World
Cisco DevNet
 
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Robert McDermott
 
Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Ted Drake
 
Managing Continuous Delivery of Mobile Apps - for the Enterprise
Managing Continuous Delivery of Mobile Apps - for the Enterprise
Sauce Labs
 
SecDevOps: The New Black of IT
SecDevOps: The New Black of IT
CloudPassage
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using Jenkins
CollabNet
 
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
Jennifer Finney
 
SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8
Rajwinder Singh
 
Continuous delivery - tools and techniques
Continuous delivery - tools and techniques
Mike McGarr
 
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
Agile Testing Alliance
 
OWASP AppSec EU - SecDevOps, a view from the trenches - Abhay Bhargav
OWASP AppSec EU - SecDevOps, a view from the trenches - Abhay Bhargav
Abhay Bhargav
 
Automated Testing in Continuous Change Management
Automated Testing in Continuous Change Management
Perforce
 
A Secure DevOps Journey
A Secure DevOps Journey
Sonatype
 
Continuous Integration
Continuous Integration
drluckyspin
 
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
sandeep kumar gupta
 
Enabing DevOps in an SDN World
Enabing DevOps in an SDN World
Cisco DevNet
 
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Robert McDermott
 

Similar to Your Framework for Success: introduction to JavaScript Testing at Scale (20)

Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Shubham Joshi
 
Mastering Selenium WebDriver: A Comprehensive Tutorial with Real-World Examples
Mastering Selenium WebDriver: A Comprehensive Tutorial with Real-World Examples
jamescantor38
 
11 Top Cross Browser Testing Tools to Know About.pdf
11 Top Cross Browser Testing Tools to Know About.pdf
kalichargn70th171
 
11 Top Cross Browser Testing Tools to Know About.pdf
11 Top Cross Browser Testing Tools to Know About.pdf
flufftailshop
 
Selenium topic 3 -Web Driver Basics
Selenium topic 3 -Web Driver Basics
ITProfessional Academy
 
Playwright vs. Puppeteer : Choosing the Right Browser Automation Library.pdf
Playwright vs. Puppeteer : Choosing the Right Browser Automation Library.pdf
Steve Wortham
 
DF326A2D-PlaywrightCourseOnline-PlaywrightTraining.pptx
DF326A2D-PlaywrightCourseOnline-PlaywrightTraining.pptx
SarvjeetKumarSingh1
 
Browserscope oscon 2011
Browserscope oscon 2011
lsimon
 
Selenium Java for Beginners by Sujit Pathak
Selenium Java for Beginners by Sujit Pathak
Software Testing Board
 
Playwright Online Training | Playwright Automation Testing Hyderabad
Playwright Online Training | Playwright Automation Testing Hyderabad
Jayanthvisualpath
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
Keyur Shah
 
Why Should we use Microsoft's Playwright
Why Should we use Microsoft's Playwright
Knoldus Inc.
 
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
Applitools
 
Playwright For Test Automation _ A Step by Step Guide.pdf
Playwright For Test Automation _ A Step by Step Guide.pdf
Steve Wortham
 
Selenium presentation
Selenium presentation
shivani thakur
 
Cypress vs Playwright: A Comparative Analysis
Cypress vs Playwright: A Comparative Analysis
Shubham Joshi
 
Make Browser Extensions Great Again
Make Browser Extensions Great Again
Dhaya B.
 
TAFs on WebDriver API - By - Pallavi Sharma.pdf
TAFs on WebDriver API - By - Pallavi Sharma.pdf
Pallavi Sharma
 
Session 01 - Introduction to Selenium - Part 2
Session 01 - Introduction to Selenium - Part 2
SiddharthSelenium
 
Playwright vs. Jest_ A Comprehensive Guide to Choosing the Right Testing Fram...
Playwright vs. Jest_ A Comprehensive Guide to Choosing the Right Testing Fram...
kalichargn70th171
 
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Shubham Joshi
 
Mastering Selenium WebDriver: A Comprehensive Tutorial with Real-World Examples
Mastering Selenium WebDriver: A Comprehensive Tutorial with Real-World Examples
jamescantor38
 
11 Top Cross Browser Testing Tools to Know About.pdf
11 Top Cross Browser Testing Tools to Know About.pdf
kalichargn70th171
 
11 Top Cross Browser Testing Tools to Know About.pdf
11 Top Cross Browser Testing Tools to Know About.pdf
flufftailshop
 
Playwright vs. Puppeteer : Choosing the Right Browser Automation Library.pdf
Playwright vs. Puppeteer : Choosing the Right Browser Automation Library.pdf
Steve Wortham
 
DF326A2D-PlaywrightCourseOnline-PlaywrightTraining.pptx
DF326A2D-PlaywrightCourseOnline-PlaywrightTraining.pptx
SarvjeetKumarSingh1
 
Browserscope oscon 2011
Browserscope oscon 2011
lsimon
 
Selenium Java for Beginners by Sujit Pathak
Selenium Java for Beginners by Sujit Pathak
Software Testing Board
 
Playwright Online Training | Playwright Automation Testing Hyderabad
Playwright Online Training | Playwright Automation Testing Hyderabad
Jayanthvisualpath
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
Keyur Shah
 
Why Should we use Microsoft's Playwright
Why Should we use Microsoft's Playwright
Knoldus Inc.
 
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
Applitools
 
Playwright For Test Automation _ A Step by Step Guide.pdf
Playwright For Test Automation _ A Step by Step Guide.pdf
Steve Wortham
 
Cypress vs Playwright: A Comparative Analysis
Cypress vs Playwright: A Comparative Analysis
Shubham Joshi
 
Make Browser Extensions Great Again
Make Browser Extensions Great Again
Dhaya B.
 
TAFs on WebDriver API - By - Pallavi Sharma.pdf
TAFs on WebDriver API - By - Pallavi Sharma.pdf
Pallavi Sharma
 
Session 01 - Introduction to Selenium - Part 2
Session 01 - Introduction to Selenium - Part 2
SiddharthSelenium
 
Playwright vs. Jest_ A Comprehensive Guide to Choosing the Right Testing Fram...
Playwright vs. Jest_ A Comprehensive Guide to Choosing the Right Testing Fram...
kalichargn70th171
 
Ad

More from Sauce Labs (20)

Simplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless Tools
Sauce Labs
 
Testing on Mobile Devices with Location Services
Testing on Mobile Devices with Location Services
Sauce Labs
 
Automating Hybrid Applications with Appium
Automating Hybrid Applications with Appium
Sauce Labs
 
Quality at Speed: More API Testing, Less UI Testing
Quality at Speed: More API Testing, Less UI Testing
Sauce Labs
 
Creating Digital Confidence with Test Automation
Creating Digital Confidence with Test Automation
Sauce Labs
 
Just Enough (Automated) Testing
Just Enough (Automated) Testing
Sauce Labs
 
Using Axe to Add Accessibility Checks to Your Existing Selenium Tests
Using Axe to Add Accessibility Checks to Your Existing Selenium Tests
Sauce Labs
 
How Open Source Helps to Bring Back Product Obsession
How Open Source Helps to Bring Back Product Obsession
Sauce Labs
 
Webinar: A Sneak Peek at Selenium 4 with Simon Stewart
Webinar: A Sneak Peek at Selenium 4 with Simon Stewart
Sauce Labs
 
[Deu] Test Automatisierung Mit Web Driver.io
[Deu] Test Automatisierung Mit Web Driver.io
Sauce Labs
 
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
Sauce Labs
 
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
Sauce Labs
 
How to Measure Success in Continuous Testing
How to Measure Success in Continuous Testing
Sauce Labs
 
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
Sauce Labs
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
Sauce Labs
 
Sauce Labs Webinar: Rising Importance of Software Testing
Sauce Labs Webinar: Rising Importance of Software Testing
Sauce Labs
 
BDD With Selenide by Hima Bindu Peteti
BDD With Selenide by Hima Bindu Peteti
Sauce Labs
 
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Sauce Labs
 
Continuous Delivery for "Mature" Codebases by Melisa Benua
Continuous Delivery for "Mature" Codebases by Melisa Benua
Sauce Labs
 
Building Automation Engineers From Scratch by Jenny Bramble
Building Automation Engineers From Scratch by Jenny Bramble
Sauce Labs
 
Simplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless Tools
Sauce Labs
 
Testing on Mobile Devices with Location Services
Testing on Mobile Devices with Location Services
Sauce Labs
 
Automating Hybrid Applications with Appium
Automating Hybrid Applications with Appium
Sauce Labs
 
Quality at Speed: More API Testing, Less UI Testing
Quality at Speed: More API Testing, Less UI Testing
Sauce Labs
 
Creating Digital Confidence with Test Automation
Creating Digital Confidence with Test Automation
Sauce Labs
 
Just Enough (Automated) Testing
Just Enough (Automated) Testing
Sauce Labs
 
Using Axe to Add Accessibility Checks to Your Existing Selenium Tests
Using Axe to Add Accessibility Checks to Your Existing Selenium Tests
Sauce Labs
 
How Open Source Helps to Bring Back Product Obsession
How Open Source Helps to Bring Back Product Obsession
Sauce Labs
 
Webinar: A Sneak Peek at Selenium 4 with Simon Stewart
Webinar: A Sneak Peek at Selenium 4 with Simon Stewart
Sauce Labs
 
[Deu] Test Automatisierung Mit Web Driver.io
[Deu] Test Automatisierung Mit Web Driver.io
Sauce Labs
 
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
Sauce Labs
 
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
Sauce Labs
 
How to Measure Success in Continuous Testing
How to Measure Success in Continuous Testing
Sauce Labs
 
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
Sauce Labs
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
Sauce Labs
 
Sauce Labs Webinar: Rising Importance of Software Testing
Sauce Labs Webinar: Rising Importance of Software Testing
Sauce Labs
 
BDD With Selenide by Hima Bindu Peteti
BDD With Selenide by Hima Bindu Peteti
Sauce Labs
 
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Sauce Labs
 
Continuous Delivery for "Mature" Codebases by Melisa Benua
Continuous Delivery for "Mature" Codebases by Melisa Benua
Sauce Labs
 
Building Automation Engineers From Scratch by Jenny Bramble
Building Automation Engineers From Scratch by Jenny Bramble
Sauce Labs
 
Ad

Recently uploaded (20)

Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
caoyixuan2019
 
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Alliance
 
Edge-banding-machines-edgeteq-s-200-en-.pdf
Edge-banding-machines-edgeteq-s-200-en-.pdf
AmirStern2
 
Murdledescargadarkweb.pdfvolumen1 100 elementary
Murdledescargadarkweb.pdfvolumen1 100 elementary
JorgeSemperteguiMont
 
“Why It’s Critical to Have an Integrated Development Methodology for Edge AI,...
“Why It’s Critical to Have an Integrated Development Methodology for Edge AI,...
Edge AI and Vision Alliance
 
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
SOFTTECHHUB
 
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Alliance
 
AI VIDEO MAGAZINE - June 2025 - r/aivideo
AI VIDEO MAGAZINE - June 2025 - r/aivideo
1pcity Studios, Inc
 
TrustArc Webinar - 2025 Global Privacy Survey
TrustArc Webinar - 2025 Global Privacy Survey
TrustArc
 
vertical-cnc-processing-centers-drillteq-v-200-en.pdf
vertical-cnc-processing-centers-drillteq-v-200-en.pdf
AmirStern2
 
Down the Rabbit Hole – Solving 5 Training Roadblocks
Down the Rabbit Hole – Solving 5 Training Roadblocks
Rustici Software
 
“From Enterprise to Makers: Driving Vision AI Innovation at the Extreme Edge,...
“From Enterprise to Makers: Driving Vision AI Innovation at the Extreme Edge,...
Edge AI and Vision Alliance
 
Artificial Intelligence in the Nonprofit Boardroom.pdf
Artificial Intelligence in the Nonprofit Boardroom.pdf
OnBoard
 
AI vs Human Writing: Can You Tell the Difference?
AI vs Human Writing: Can You Tell the Difference?
Shashi Sathyanarayana, Ph.D
 
Reducing Conflicts and Increasing Safety Along the Cycling Networks of East-F...
Reducing Conflicts and Increasing Safety Along the Cycling Networks of East-F...
Safe Software
 
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance
 
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Alliance
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Safe Software
 
Mastering AI Workflows with FME - Peak of Data & AI 2025
Mastering AI Workflows with FME - Peak of Data & AI 2025
Safe Software
 
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
caoyixuan2019
 
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Alliance
 
Edge-banding-machines-edgeteq-s-200-en-.pdf
Edge-banding-machines-edgeteq-s-200-en-.pdf
AmirStern2
 
Murdledescargadarkweb.pdfvolumen1 100 elementary
Murdledescargadarkweb.pdfvolumen1 100 elementary
JorgeSemperteguiMont
 
“Why It’s Critical to Have an Integrated Development Methodology for Edge AI,...
“Why It’s Critical to Have an Integrated Development Methodology for Edge AI,...
Edge AI and Vision Alliance
 
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
SOFTTECHHUB
 
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Alliance
 
AI VIDEO MAGAZINE - June 2025 - r/aivideo
AI VIDEO MAGAZINE - June 2025 - r/aivideo
1pcity Studios, Inc
 
TrustArc Webinar - 2025 Global Privacy Survey
TrustArc Webinar - 2025 Global Privacy Survey
TrustArc
 
vertical-cnc-processing-centers-drillteq-v-200-en.pdf
vertical-cnc-processing-centers-drillteq-v-200-en.pdf
AmirStern2
 
Down the Rabbit Hole – Solving 5 Training Roadblocks
Down the Rabbit Hole – Solving 5 Training Roadblocks
Rustici Software
 
“From Enterprise to Makers: Driving Vision AI Innovation at the Extreme Edge,...
“From Enterprise to Makers: Driving Vision AI Innovation at the Extreme Edge,...
Edge AI and Vision Alliance
 
Artificial Intelligence in the Nonprofit Boardroom.pdf
Artificial Intelligence in the Nonprofit Boardroom.pdf
OnBoard
 
AI vs Human Writing: Can You Tell the Difference?
AI vs Human Writing: Can You Tell the Difference?
Shashi Sathyanarayana, Ph.D
 
Reducing Conflicts and Increasing Safety Along the Cycling Networks of East-F...
Reducing Conflicts and Increasing Safety Along the Cycling Networks of East-F...
Safe Software
 
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance
 
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Alliance
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Safe Software
 
Mastering AI Workflows with FME - Peak of Data & AI 2025
Mastering AI Workflows with FME - Peak of Data & AI 2025
Safe Software
 

Your Framework for Success: introduction to JavaScript Testing at Scale

  • 1. Your Framework for Success Introduction to JavaScript Testing at Scale
  • 2. Open Source Program Office @saucelabs Christian Bromann @christian-bromann @bromann Daniel Graham Sr. Software Engineer @saucelabs
  • 3. —CARL SAGAN “You have to know the past to understand the present.”
  • 4. 2004 2007 2010 2013 2016 2019 ? Simon Stewart created WebDriver 05 Selenium and WebDriver merge into Selenium-WebDriver 09 Jason Huggins (Sauce Labs Co-Founder) created Selenium 04 Sauce Labs was founded 08 Cypress.io was founded 15 WebDriver becomes W3C Recommendation 18 WebDriver BiDi work initiated 19 1st Release of Selenium-WebDriver JS Bindings 1st Appium Release 1st Testcafe Release 1st Puppeteer Release Cypress Public Beta 1st Playwright Release WHAT HAPPENED PREVIOUSLY... 1st Protractor Release 1st WebdriverIO Release W3C WG starts to spec WebDriver Protocol 12 *v2
  • 6. Conventional Tools ● based on the W3C WebDriver specification ● true cross browser automation ● browser and mobile support ● limited automation capabilities - QA focus ● Open governed open source projects with long history and large communities
  • 7. Non-Standard Tools ● custom (non-standardised) automation ○ based on browser APIs ○ or JavaScript emulation ● Limited cross browser support ● More automation capabilities - developer focus ● Company baked and governed Open Source projects ○ Cypress.io → Cypress ○ Testcafe → DevExpress ○ Playwright → Microsoft ○ Puppeteer → Google
  • 8. Through the WebDriver protocol AUTOMATION STRATEGIES WebdriverIO Through WebDriver & browser APIs Selenium Testcafe Through Web APIs Puppeteer Through browser APIs Cypress.io Through Web + browser APIs Playwright Through custom / modified browser APIs
  • 9. 3rd generation of automating browsers Official Web Standard developed at W3C in a common effort by all browser vendors Thoroughly tested as part of the web platform test suite Limited capabilities - originally designed to automate from the user POV 2nd generation of automating browsers Available in all browser engines (Chromium/Gecko and WebKit) Accessible only in Chromium and Firefox Also used for debugging purposes (e.g. Chrome DevTools) WAYS TO AUTOMATE A BROWSER Browser APIs Web APIs 1st generation of automating (initially used by Selenium in 2004) Provides full control of the execution environment Automation commands are mostly emulated Comes with limitations, e.g. no switching windows or cross origin iFrame support WebDriver Protocol ● ● ● ● ● ● ● ● ● ● ● ●
  • 11. 3rd generation of automating browsers Official Web Standard developed at W3C in a common effort by all browser vendors Thoroughly tested as part of the web platform test suite Limited capabilities - originally designed to automate from the user POV 2nd generation of automating browsers Available in all browser engines (Chromium/Gecko and WebKit) Accessible only in Chromium and Firefox Also used for debugging purposes (e.g. Chrome DevTools) WAYS TO AUTOMATE A BROWSER Browser APIs Web APIs 1st generation of automating (initially used by Selenium in 2004) Provides full control of the execution environment Automation commands are mostly emulated Comes with limitations, e.g. no switching windows or cross origin iFrame support WebDriver Protocol ● ● ● ● ● ● ● ● ● ● ● ●
  • 13. 3rd generation of automating browsers Official Web Standard developed at W3C in a common effort by all browser vendors Thoroughly tested as part of the web platform test suite Limited capabilities - originally designed to automate from the user POV 2nd generation of automating browsers Available in all browser engines (Chromium/Gecko and WebKit) Accessible only in Chromium and Firefox Also used for debugging purposes (e.g. Chrome DevTools) WAYS TO AUTOMATE A BROWSER Browser APIs JavaScript APIs 1st generation of automating (initially used by Selenium in 2004) Provides full control of the execution environment Automation commands are mostly emulated Comes with limitations, e.g. no switching windows or cross origin iFrame support WebDriver Protocol ● ● ● ● ● ● ● ● ● ● ● ●
  • 14. Go to URL Current WebDriver Protocol
  • 18. CREDITS: This presentation template was created by Slidesgo, including icons by Flaticon, infographics & images by Freepik. SAUCECTL Sauce Testrunner Toolkit $ npm install --save-dev saucectl
  • 20. CREDITS: This presentation template was created by Slidesgo, including icons by Flaticon, infographics & images by Freepik. Thank you! Any questions? @christian-bromann @bromann