Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Automation, Selenium and Sauce
Search
Santiago Suarez Ordoñez
October 05, 2012
Technology
1
150
Automation, Selenium and Sauce
Why jumping on the automated test bandwagon is more than just a good idea.
Santiago Suarez Ordoñez
October 05, 2012
Tweet
Share
More Decks by Santiago Suarez Ordoñez
See All by Santiago Suarez Ordoñez
Selenium is dead, long live Selenium!
santiycr
0
470
Selenium for Pythonistas
santiycr
2
540
PyCon Workshop Slides
santiycr
1
470
Stripping down RemoteWebDriver
santiycr
1
480
Optimizing Selenium for build performance
santiycr
0
200
Tips From Our Codebase To Help You Write Reliable Selenium Tests
santiycr
0
100
Testing Automatizado
santiycr
0
43
Other Decks in Technology
See All in Technology
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
4
570
監視のこれまでとこれから/sakura monitoring seminar 2025
fujiwara3
11
4k
「良さそう」と「とても良い」の間には 「良さそうだがホンマか」がたくさんある / 2025.07.01 LLM品質Night
smiyawaki0820
1
370
Kotlin Coroutine Mechanisms: A Surprisingly Deep Rabbithole
amanda_hinchman
2
100
フィンテック養成勉強会#54
finengine
0
180
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全 / 20250625-aws-summit-aws-policy
opelab
9
1.2k
KubeCon + CloudNativeCon Japan 2025 Recap
ren510dev
1
180
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
5
650
Lambda Web Adapterについて自分なりに理解してみた
smt7174
5
130
Github Copilot エージェントモードで試してみた
ochtum
0
110
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
260
ドメイン特化なCLIPモデルとデータセットの紹介
tattaka
1
200
Featured
See All Featured
Bash Introduction
62gerente
614
210k
Side Projects
sachag
455
42k
Six Lessons from altMBA
skipperchong
28
3.9k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Producing Creativity
orderedlist
PRO
346
40k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Music & Morning Musume
bryan
46
6.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Documentation Writing (for coders)
carmenintech
72
4.9k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Why Our Code Smells
bkeepers
PRO
337
57k
Transcript
Selenium, Sauce Labs and Automated Testing Why jumping on the
automated test bandwagon is more than just a good idea http://bit.ly/automation-slides
Who is this guy?! Santiago Suarez Ordoñez @santiycr Selenium Ninja
@ Sauce Labs Selenium Committer
Agenda • Automation ◦ Let's agree test automation is the
way to go • Selenium ◦ Current state of the project ◦ Features and limitations • Sauce Labs ◦ Sauce OnDemand ◦ Sauce Scout
Why test automation? • Repetitive tasks are boring • Creative
tasks are fun • Machines are made for boring tasks • They make no mistakes • They never get tired • They are fast!
Let's compare!
Selenium Jason Huggins (@hugs) @ ThoughtWorks Open Source (Apache) Released
in 2004 JavaScript core (tons of hackery around) Selenium Core, IDE, RC
Selenium Core Deployed with the application Table-based syntax No flow
control (conditionals, iteration) open /login type username santiago type password mySecretPassword click submit asserTitle Account Page
Selenium IDE Selenium Core inside a Firefox plugin Plus Record&Playback
No need to deploy tests
Selenium RC Client-server architecture Multiple hacks let Selenium Core do
XSS Tests written in various programming languages
Selenium had its limitations The browsers' javascript sandbox Native popups
and windows: ◦ alert() ◦ confirm() ◦ downloads ◦ uploads The API grew way too big (>150 methods)
WebDriver Simon Stewart (@shs96c) @ ThoughtWorks Open Source (Apache 2)
Released early 2007 A more native approach for automation A cleaner and object oriented API
WebDriver also had its issues Lower maintainability Less browser support
Java only library Limited user base
API differences Plain API (Selenium RC) sel.type("username", "santiago") sel.type("password", "secretPass")
sel.click("submit") OO API (WebDriver) WebElement user = driver.findElement(By.id("username")); user.sendKeys("santiago"); WebElement pass = driver.findElement(By.id("password")); pass.sendKeys("secretPass"); pass.submit()
Selenium 2 WebDriver's API Selenium's Community and user base Native
hooks for some interactions Javascript Atoms for maintainability and instant browser support
Selenium 2's support matrix Bindings: Java, Ruby, Python, C#, JavaScript,
PHP (unofficial), Perl (unofficial) Drivers: HTMLUnit, Firefox, Chrome, Opera, IE, Safari (on the works), iOS, Android, headless webkit...
Demo
Learn more! • http://seleniumhq.org/docs/ • selenium-users mailing list • http://code.google.com/p/selenium/
Contribute! • selenium-developers mailing list • #selenium on freenode (IRC) • http://code.google.com/p/selenium/
Sauce Labs
Sauce Automated Selenium's Remote Architecture taken to the Cloud Run
your scripts locally, use our browsers remotely the internetz
Features Elastic growth (pay by the minute) High parallelization limits
Up-to-date, maintenance-free test lab Enhanced reporting (videos, screenshots, logs) Focus on your tests, not your infrastructure
Free usage for open source projects Free basic accounts for
everyone We're also cool with startups/FLOSS
Sauce Interactive Manual Testing in the cloud We use Selenium
to give you browsers!
Sauce Connect Use Scout and OnDemand against a private server
(localhost, 192.168.1.100, web_qa.local) http://saucelabs.com/docs/sauce-connect
Thanks! Santiago Suarez Ordoñez @santiycr http://saucelabs.com http://bit.ly/automation-slides Thanks @stephendonner (Mozilla
for reviewing), @jarib (some slides content)
Q&A