Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
480
Selenium for Pythonistas
santiycr
2
550
PyCon Workshop Slides
santiycr
1
480
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
110
Testing Automatizado
santiycr
0
46
Other Decks in Technology
See All in Technology
バグハンター視点によるサプライチェーンの脆弱性
scgajge12
3
990
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
690
Debugging Edge AI on Zephyr and Lessons Learned
iotengineer22
0
110
Kiro Autonomous AgentとKiro Powers の紹介 / kiro-autonomous-agent-and-powers
tomoki10
0
300
Microsoft Agent 365 を 30 分でなんとなく理解する
skmkzyk
1
1k
Overture Maps Foundationの3年を振り返る
moritoru
0
160
因果AIへの招待
sshimizu2006
0
920
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
120
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
5
1.3k
[JAWS-UG 横浜支部 #91]DevOps Agent vs CloudWatch Investigations -比較と実践-
sh_fk2
1
240
法人支出管理領域におけるソフトウェアアーキテクチャに基づいたテスト戦略の実践
ogugu9
1
210
GitHub Copilotを使いこなす 実例に学ぶAIコーディング活用術
74th
3
1.3k
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Raft: Consensus for Rubyists
vanstee
141
7.2k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Faster Mobile Websites
deanohume
310
31k
4 Signs Your Business is Dying
shpigford
186
22k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Producing Creativity
orderedlist
PRO
348
40k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Why Our Code Smells
bkeepers
PRO
340
57k
Designing for humans not robots
tammielis
254
26k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
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