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

More Related Content

What's hot (20)

Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Automated Testing – Web, Mobile, Desktop - Challenges and SuccessesAutomated Testing – Web, Mobile, Desktop - Challenges and Successes
Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Ted Drake
 
ATAGTR2017 Wearable App Testing
ATAGTR2017 Wearable App TestingATAGTR2017 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 EnterpriseManaging 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 ITSecDevOps: 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 JenkinsEnterprise 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...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-v8SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8
Rajwinder Singh
 
Continuous delivery - tools and techniques
Continuous delivery - tools and techniquesContinuous delivery - tools and techniques
Continuous delivery - tools and techniques
Mike McGarr
 
Continuous Testing
Continuous TestingContinuous Testing
Continuous Testing
Karim Fanadka
 
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
Agile Testing Alliance
 
DevOps Architecture Design
DevOps Architecture DesignDevOps Architecture Design
DevOps Architecture Design
Agile Testing Alliance
 
CI back to basis
CI back to basisCI 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 BhargavOWASP 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 ManagementAutomated Testing in Continuous Change Management
Automated Testing in Continuous Change Management
Perforce
 
A Secure DevOps Journey
A Secure DevOps JourneyA Secure DevOps Journey
A Secure DevOps Journey
Sonatype
 
Appium vs Espresso and XCUI Test
Appium vs Espresso and XCUI TestAppium vs Espresso and XCUI Test
Appium vs Espresso and XCUI Test
Perfecto by Perforce
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
drluckyspin
 
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -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 WorldEnabing 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) PipelineAnatomy 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 SuccessesAutomated 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 EnterpriseManaging 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 ITSecDevOps: 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 JenkinsEnterprise 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...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-v8SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8
Rajwinder Singh
 
Continuous delivery - tools and techniques
Continuous delivery - tools and techniquesContinuous 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#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 BhargavOWASP 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 ManagementAutomated Testing in Continuous Change Management
Automated Testing in Continuous Change Management
Perforce
 
A Secure DevOps Journey
A Secure DevOps JourneyA Secure DevOps Journey
A Secure DevOps Journey
Sonatype
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
drluckyspin
 
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -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 WorldEnabing 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) PipelineAnatomy 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 GuideGetting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Shubham Joshi
 
11 Top Cross Browser Testing Tools to Know About.pdf
11 Top Cross Browser Testing Tools to Know About.pdf11 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.pdf11 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 BasicsSelenium 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.pdfPlaywright 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.pptxDF326A2D-PlaywrightCourseOnline-PlaywrightTraining.pptx
DF326A2D-PlaywrightCourseOnline-PlaywrightTraining.pptx
SarvjeetKumarSingh1
 
Browserscope oscon 2011
Browserscope oscon 2011Browserscope oscon 2011
Browserscope oscon 2011
lsimon
 
Selenium Java for Beginners by Sujit Pathak
Selenium Java for Beginners by Sujit PathakSelenium 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 HyderabadPlaywright 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 WebinarAccessibility 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 PlaywrightWhy 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.pdfFront-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.pdfPlaywright For Test Automation _ A Step by Step Guide.pdf
Playwright For Test Automation _ A Step by Step Guide.pdf
Steve Wortham
 
Selenium presentation
Selenium presentationSelenium presentation
Selenium presentation
shivani thakur
 
Cypress vs Playwright: A Comparative Analysis
Cypress vs Playwright: A Comparative AnalysisCypress vs Playwright: A Comparative Analysis
Cypress vs Playwright: A Comparative Analysis
Shubham Joshi
 
Make Browser Extensions Great Again
Make Browser Extensions Great AgainMake Browser Extensions Great Again
Make Browser Extensions Great Again
Dhaya B.
 
Session 01 - Introduction to Selenium - Part 2
Session 01 - Introduction to Selenium - Part 2Session 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...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
 
WebDriverIO Tutorial for Selenium Automation.pdf
WebDriverIO Tutorial for Selenium Automation.pdfWebDriverIO Tutorial for Selenium Automation.pdf
WebDriverIO Tutorial for Selenium Automation.pdf
kalichargn70th171
 
Effective testing of rich internet applications
Effective testing of rich internet applicationsEffective testing of rich internet applications
Effective testing of rich internet applications
Rashwin
 
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup GuideGetting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
Shubham Joshi
 
11 Top Cross Browser Testing Tools to Know About.pdf
11 Top Cross Browser Testing Tools to Know About.pdf11 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.pdf11 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.pdfPlaywright 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.pptxDF326A2D-PlaywrightCourseOnline-PlaywrightTraining.pptx
DF326A2D-PlaywrightCourseOnline-PlaywrightTraining.pptx
SarvjeetKumarSingh1
 
Browserscope oscon 2011
Browserscope oscon 2011Browserscope oscon 2011
Browserscope oscon 2011
lsimon
 
Selenium Java for Beginners by Sujit Pathak
Selenium Java for Beginners by Sujit PathakSelenium 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 HyderabadPlaywright 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 WebinarAccessibility 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 PlaywrightWhy 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.pdfFront-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.pdfPlaywright 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 AnalysisCypress vs Playwright: A Comparative Analysis
Cypress vs Playwright: A Comparative Analysis
Shubham Joshi
 
Make Browser Extensions Great Again
Make Browser Extensions Great AgainMake Browser Extensions Great Again
Make Browser Extensions Great Again
Dhaya B.
 
Session 01 - Introduction to Selenium - Part 2
Session 01 - Introduction to Selenium - Part 2Session 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...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
 
WebDriverIO Tutorial for Selenium Automation.pdf
WebDriverIO Tutorial for Selenium Automation.pdfWebDriverIO Tutorial for Selenium Automation.pdf
WebDriverIO Tutorial for Selenium Automation.pdf
kalichargn70th171
 
Effective testing of rich internet applications
Effective testing of rich internet applicationsEffective testing of rich internet applications
Effective testing of rich internet applications
Rashwin
 
Ad

More from Sauce Labs (20)

Simplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless ToolsSimplify 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 ServicesTesting on Mobile Devices with Location Services
Testing on Mobile Devices with Location Services
Sauce Labs
 
Automating Hybrid Applications with Appium
Automating Hybrid Applications with AppiumAutomating 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 TestingQuality 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 AutomationCreating Digital Confidence with Test Automation
Creating Digital Confidence with Test Automation
Sauce Labs
 
Just Enough (Automated) Testing
Just Enough (Automated) TestingJust 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 TestsUsing 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 ObsessionHow 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 StewartWebinar: 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[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...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. ForresterAccelerating 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 TestingHow 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...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 Automation5 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 TestingSauce 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 PetetiBDD 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...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 BenuaContinuous 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 BrambleBuilding 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 ToolsSimplify 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 ServicesTesting on Mobile Devices with Location Services
Testing on Mobile Devices with Location Services
Sauce Labs
 
Automating Hybrid Applications with Appium
Automating Hybrid Applications with AppiumAutomating 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 TestingQuality 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 AutomationCreating Digital Confidence with Test Automation
Creating Digital Confidence with Test Automation
Sauce Labs
 
Just Enough (Automated) Testing
Just Enough (Automated) TestingJust 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 TestsUsing 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 ObsessionHow 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 StewartWebinar: 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[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...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. ForresterAccelerating 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 TestingHow 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...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 Automation5 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 TestingSauce 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 PetetiBDD 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...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 BenuaContinuous 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 BrambleBuilding Automation Engineers From Scratch by Jenny Bramble
Building Automation Engineers From Scratch by Jenny Bramble
Sauce Labs
 
Ad

Recently uploaded (20)

Top-AI-Based-Tools-for-Game-Developers (1).pptx
Top-AI-Based-Tools-for-Game-Developers (1).pptxTop-AI-Based-Tools-for-Game-Developers (1).pptx
Top-AI-Based-Tools-for-Game-Developers (1).pptx
BR Softech
 
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à GenèveUiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPathCommunity
 
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Raffi Khatchadourian
 
An Overview of Salesforce Health Cloud & How is it Transforming Patient Care
An Overview of Salesforce Health Cloud & How is it Transforming Patient CareAn Overview of Salesforce Health Cloud & How is it Transforming Patient Care
An Overview of Salesforce Health Cloud & How is it Transforming Patient Care
Cyntexa
 
machines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdfmachines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdf
AmirStern2
 
Unlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web AppsUnlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web Apps
Maximiliano Firtman
 
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
SOFTTECHHUB
 
AI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of DocumentsAI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of Documents
UiPathCommunity
 
Com fer un pla de gestió de dades amb l'eiNa DMP (en anglès)
Com fer un pla de gestió de dades amb l'eiNa DMP (en anglès)Com fer un pla de gestió de dades amb l'eiNa DMP (en anglès)
Com fer un pla de gestió de dades amb l'eiNa DMP (en anglès)
CSUC - Consorci de Serveis Universitaris de Catalunya
 
AI-proof your career by Olivier Vroom and David WIlliamson
AI-proof your career by Olivier Vroom and David WIlliamsonAI-proof your career by Olivier Vroom and David WIlliamson
AI-proof your career by Olivier Vroom and David WIlliamson
UXPA Boston
 
Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)
Kaya Weers
 
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdfKit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Wonjun Hwang
 
Crazy Incentives and How They Kill Security. How Do You Turn the Wheel?
Crazy Incentives and How They Kill Security. How Do You Turn the Wheel?Crazy Incentives and How They Kill Security. How Do You Turn the Wheel?
Crazy Incentives and How They Kill Security. How Do You Turn the Wheel?
Christian Folini
 
Q1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor PresentationQ1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor Presentation
Dropbox
 
fennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solutionfennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solution
shallal2
 
How to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabberHow to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabber
eGrabber
 
Bepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firmBepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firm
Benard76
 
May Patch Tuesday
May Patch TuesdayMay Patch Tuesday
May Patch Tuesday
Ivanti
 
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptxReimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
John Moore
 
Build With AI - In Person Session Slides.pdf
Build With AI - In Person Session Slides.pdfBuild With AI - In Person Session Slides.pdf
Build With AI - In Person Session Slides.pdf
Google Developer Group - Harare
 
Top-AI-Based-Tools-for-Game-Developers (1).pptx
Top-AI-Based-Tools-for-Game-Developers (1).pptxTop-AI-Based-Tools-for-Game-Developers (1).pptx
Top-AI-Based-Tools-for-Game-Developers (1).pptx
BR Softech
 
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à GenèveUiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPathCommunity
 
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Raffi Khatchadourian
 
An Overview of Salesforce Health Cloud & How is it Transforming Patient Care
An Overview of Salesforce Health Cloud & How is it Transforming Patient CareAn Overview of Salesforce Health Cloud & How is it Transforming Patient Care
An Overview of Salesforce Health Cloud & How is it Transforming Patient Care
Cyntexa
 
machines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdfmachines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdf
AmirStern2
 
Unlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web AppsUnlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web Apps
Maximiliano Firtman
 
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
SOFTTECHHUB
 
AI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of DocumentsAI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of Documents
UiPathCommunity
 
AI-proof your career by Olivier Vroom and David WIlliamson
AI-proof your career by Olivier Vroom and David WIlliamsonAI-proof your career by Olivier Vroom and David WIlliamson
AI-proof your career by Olivier Vroom and David WIlliamson
UXPA Boston
 
Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)
Kaya Weers
 
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdfKit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Wonjun Hwang
 
Crazy Incentives and How They Kill Security. How Do You Turn the Wheel?
Crazy Incentives and How They Kill Security. How Do You Turn the Wheel?Crazy Incentives and How They Kill Security. How Do You Turn the Wheel?
Crazy Incentives and How They Kill Security. How Do You Turn the Wheel?
Christian Folini
 
Q1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor PresentationQ1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor Presentation
Dropbox
 
fennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solutionfennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solution
shallal2
 
How to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabberHow to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabber
eGrabber
 
Bepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firmBepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firm
Benard76
 
May Patch Tuesday
May Patch TuesdayMay Patch Tuesday
May Patch Tuesday
Ivanti
 
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptxReimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
John Moore
 

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
  翻译: