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
[EN] ChromeDriver Jailbreak (short)
Search
Alexander Bayandin
November 16, 2016
Programming
220
0
Share
[EN] ChromeDriver Jailbreak (short)
SeleniumConf UK 2016 Lightning Talk
Video:
https://youtu.be/FoTCmWvaQME?t=24m51s
Alexander Bayandin
November 16, 2016
More Decks by Alexander Bayandin
See All by Alexander Bayandin
Нетрадиционное использование автотестов
bayandin
0
42
Chrome DevTools в Selenium тестах
bayandin
0
400
[RU] ChromeDriver Jailbreak
bayandin
0
130
Mobile Web: to the Desktop!
bayandin
1
38
JavaScript + Webdriver = ♥ (v1.1)
bayandin
1
270
JavaScript + Webdriver = ♥
bayandin
1
920
Other Decks in Programming
See All in Programming
Swiftのレキシカルスコープ管理
kntkymt
0
210
Claspは野良GASの夢をみるか
takter00
0
160
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
230
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
190
TAKTでAI駆動開発の品質を設計する
j5ik2o
6
910
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
2.8k
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
270
Lessons from Spec-Driven Development
simas
PRO
0
140
Webフレームワークの ベンチマークについて
yusukebe
0
130
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
170
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.5k
New "Type" system on PicoRuby
pocke
1
470
Featured
See All Featured
Technical Leadership for Architectural Decision Making
baasie
3
400
Designing Powerful Visuals for Engaging Learning
tmiket
1
400
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
220
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Why Our Code Smells
bkeepers
PRO
340
58k
Amusing Abliteration
ianozsvald
1
200
Practical Orchestrator
shlominoach
191
11k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
430
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
We Are The Robots
honzajavorek
0
240
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
220
Transcript
ChromeDriver Jailbreak Alexander Bayandin
Jailbreak?
Jailbreak? It allows us to use Chrome features which are
not available through ChromeDriver. 3
Driver architecture
+------+ +------------+ +------+ |Client|<------>|ChromeDriver|<------>|Chrome| +------+ +------------+ +------+
+------+ +------------+ +------+ |Client|<------>|ChromeDriver|<------>|Chrome| +------+ +------------+ +------+ WebDriver Protocol Chrome
Debugging Protocol (over WebSockets) Selenium or test
Chrome Debugging Protocol 7 Chrome DevTools uses it.
What if… 8 Send a custom request?
+-+ +-+ +--------+ +------------+ |C| |T|<---->|Selenium|<---->|ChromeDriver|<------->|h| |e| +--------+ +------------+ |r|
|s| |o| |t|<------------------------------------------->|m| +-+ |e| +-+ WebSocket Connection
+-+ +-+ +--------+ +------------+ |C| |T|<---->|Selenium|<---->|ChromeDriver|<------->|h| |e| +--------+ +------------+ |r|
|s| |o| |t|<------------------------------------------->|m| +-+ |e| +-+ WebSocket Connection
+-+ +-+ +-+ +--------+ +------------+ |P| |C| |T|<---->|Selenium|<---->|ChromeDriver|<->|r| |h| |e|
+--------+ +------------+ |o|<->|r| |s| |x| |o| |t|<------------------------------------->|y| |m| +-+ +-+ |e| +-+ WebSocket Connection
devtools-proxy ✦ devtools-proxy ✦ chrome-wrapper.sh 12
Examples
devtools-proxy examples 14 ✦ Chrome Debugging protocol methods, for example
CPU Throttling
# https://chromedevtools.github.io/debugger-protocol-viewer/ > { "id":0, "method":"Emulation.setCPUThrottlingRate", "params":{ "rate": 10 }
}
None
devtools-proxy examples 17 ✦ Chrome Debugging protocol methods, for example
CPU Throttling ✦ See HTTP requests during test run
None
devtools-proxy examples 19 ✦ Chrome Debugging protocol methods, for example
CPU Throttling ✦ See HTTP requests during test run ✦ See what’s going on (like Remote Debugging Android Devices)
None
Interested?
Good to know before ✦ Almost no docs ✦ Doesn’t
support Windows yet ✦ Chromium / Google Chrome only 22
Good to know before ✦ Almost no docs ✦ Doesn’t
support Windows yet ✦ Chromium / Google Chrome only ✦ Has some bugs, probably 23
Good to know before ✦ Almost no docs ✦ Doesn’t
support Windows yet ✦ Chromium / Google Chrome only ✦ Has some bugs, probably ✦ Selenium Python test suite passes 24
Good to know before ✦ Almost no docs ✦ Doesn’t
support Windows yet ✦ Chromium / Google Chrome only ✦ Has some bugs, probably ✦ Selenium Python test suite passes ✦ Python 25
Download bayandin/devtools-proxy 26
Thank you! abayandin bayandin alexander.bayand.in
Thank you! BadooTech Badoo techblog.badoo.com