Chrome DevTools
в Selenium тестах
Александр Баяндин
Slide 2
Slide 2 text
https://2017.codefest.ru/speaker/3158/
Slide 3
Slide 3 text
https://2017.codefest.ru/speaker/3158/
Slide 4
Slide 4 text
“ THIS IS THE
MOST POPULAR
DATING APP IN
THE WORLD
— Time
Slide 5
Slide 5 text
400K
Регистраций
в день
5
Платформ
340M
Пользователей
1.8ч
Использование
в день
350M
Сообщений в
день
21M
DAU
60M
MAU
10M
Фотозагрузок
в день
О нас
Slide 6
Slide 6 text
400K
Регистраций
в день
5
Платформ
340M
Пользователей
1.8ч
Использование
в день
350M
Сообщений в
день
21M
DAU
60M
MAU
10M
Фотозагрузок
в день
О нас
Slide 7
Slide 7 text
Платформы
✦ Desktop Web
5
Slide 8
Slide 8 text
Платформы
✦ Desktop Web
✦ iOS
5
Slide 9
Slide 9 text
Платформы
✦ Desktop Web
✦ iOS
✦ Android
5
Slide 10
Slide 10 text
Платформы
✦ Desktop Web
✦ iOS
✦ Android
✦ Windows Phone
5
Slide 11
Slide 11 text
Платформы
✦ Desktop Web
✦ iOS
✦ Android
✦ Windows Phone
✦ Mobile Web
5
Slide 12
Slide 12 text
Mobile Test Automation
Платформы
✦ Desktop Web
✦ iOS
✦ Android
✦ Windows Phone
✦ Mobile Web
5
Slide 13
Slide 13 text
Mobile Test Automation
Платформы
✦ Desktop Web
✦ iOS
✦ Android
✦ Windows Phone
✦ Mobile Web
5
Slide 14
Slide 14 text
Mobile Test Automation
Платформы
✦ Desktop Web
✦ iOS
✦ Android
✦ Windows Phone
✦ Mobile Web
5
Slide 15
Slide 15 text
Mobile Test Automation
6
Slide 16
Slide 16 text
Mobile Test Automation
6
✦ Ruby & Cucumber
Slide 17
Slide 17 text
Mobile Test Automation
6
✦ Ruby & Cucumber
✦ Calabash
Slide 18
Slide 18 text
Mobile Test Automation
6
✦ Ruby & Cucumber
✦ Calabash
✦ Winium.Mobile
Slide 19
Slide 19 text
Mobile Test Automation
6
✦ Ruby & Cucumber
✦ Calabash
✦ Winium.Mobile
✦ Selenium + Chrome
Slide 20
Slide 20 text
План
7
Slide 21
Slide 21 text
План
7
✦ Как видеть HTTP запросы во время прохождения теста
Slide 22
Slide 22 text
План
7
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Slide 23
Slide 23 text
План
7
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Как работает ChromeDriver
Slide 24
Slide 24 text
План
7
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Как работает ChromeDriver
✦ Как видеть выполнение теста
Slide 25
Slide 25 text
План
7
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Как работает ChromeDriver
✦ Как видеть выполнение теста
✦ Как использовать все инструменты из Chrome DevTools
Slide 26
Slide 26 text
DevTools
Slide 27
Slide 27 text
9
Slide 28
Slide 28 text
10
Slide 29
Slide 29 text
10
DevTools
Slide 30
Slide 30 text
11
Slide 31
Slide 31 text
12
Slide 32
Slide 32 text
DevTools в тестах
Slide 33
Slide 33 text
14
Slide 34
Slide 34 text
15
Slide 35
Slide 35 text
16
Slide 36
Slide 36 text
17
Slide 37
Slide 37 text
17
Slide 38
Slide 38 text
– В нетворке пусто
Slide 39
Slide 39 text
– В нетворке пусто
— А мы хитрее! ;)
Slide 40
Slide 40 text
20
Slide 41
Slide 41 text
21
Slide 42
Slide 42 text
22
Slide 43
Slide 43 text
23
Slide 44
Slide 44 text
24
Slide 45
Slide 45 text
25
Slide 46
Slide 46 text
25
Slide 47
Slide 47 text
No content
Slide 48
Slide 48 text
– В нетворке пусто
Slide 49
Slide 49 text
– В нетворке пусто
Почему?
Slide 50
Slide 50 text
План
28
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Как работает ChromeDriver
✦ Как видеть выполнение теста
✦ Как использовать все инструменты из Chrome DevTools
План
38
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Как работает ChromeDriver
✦ Как видеть выполнение теста
✦ Как использовать все инструменты из Chrome DevTools
План
61
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Как работает ChromeDriver
✦ Как видеть выполнение теста
✦ Как использовать все инструменты из Chrome DevTools
План
67
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Как работает ChromeDriver
✦ Как видеть выполнение теста
✦ Как использовать все инструменты из Chrome DevTools
Slide 130
Slide 130 text
Аналогичные решения
68
Slide 131
Slide 131 text
Аналогичные решения
✦ Remote debugger for Android
68
Slide 132
Slide 132 text
Remote Debugger for Android
https://developers.google.com/web/tools/chrome-devtools/remote-debugging/
Slide 133
Slide 133 text
Remote Debugger for Android
https://developers.google.com/web/tools/chrome-devtools/remote-debugging/
Slide 134
Slide 134 text
Аналогичные решения
71
Slide 135
Slide 135 text
Аналогичные решения
✦ Remote debugger for Android
71
Slide 136
Slide 136 text
Аналогичные решения
✦ Remote debugger for Android
✦ Headless Chrome
71
План
79
✦ Как видеть HTTP запросы во время прохождения теста
Как работают Chrome DevTools
Как работает ChromeDriver
✦ Как видеть выполнение теста
✦ Как использовать все инструменты из Chrome DevTools
Slide 150
Slide 150 text
– А как запускать
тесты на
медленных
устройствах?
Slide 151
Slide 151 text
Медленные устройства
81
Slide 152
Slide 152 text
Медленные устройства
✦ Медленная сеть
81
Slide 153
Slide 153 text
Медленные устройства
✦ Медленная сеть — Network Throttling
82
Slide 154
Slide 154 text
Медленные устройства
https://chromedevtools.github.io/debugger-protocol-viewer/1-2/Network/#method-emulateNetworkConditions
Slide 155
Slide 155 text
Медленные устройства
✦ Медленная сеть — Network Throttling
84
Slide 156
Slide 156 text
Медленные устройства
✦ Медленная сеть — Network Throttling
✦ Слабый процессор
84
Slide 157
Slide 157 text
Медленные устройства
✦ Медленная сеть — Network Throttling
✦ Слабый процессор — CPU Throttling
85
Slide 158
Slide 158 text
Медленные устройства
https://chromedevtools.github.io/debugger-protocol-viewer/tot/Emulation/#method-setCPUThrottlingRate
> {
"id":0,
"method":"Emulation.setCPUThrottlingRate",
"params":{ "rate": 10 }
}
N times slower
89
Slide 163
Slide 163 text
https://youtu.be/NU46EkrRoYo
Slide 164
Slide 164 text
Полезно знать
91
Slide 165
Slide 165 text
Полезно знать
✦ devtools-proxy полностью совместим с Selenium
91
Slide 166
Slide 166 text
Полезно знать
✦ devtools-proxy полностью совместим с Selenium
✦ Пока нет поддержки Windows
91
Slide 167
Slide 167 text
Полезно знать
✦ devtools-proxy полностью совместим с Selenium
✦ Пока нет поддержки Windows
✦ Только для Chromium / Google Chrome
91
Slide 168
Slide 168 text
Планы на будущее
Slide 169
Slide 169 text
Планы на будущее
93
Slide 170
Slide 170 text
Планы на будущее
93
✦ Научиться останавливаться на debugger / breakpoints
Slide 171
Slide 171 text
Планы на будущее
93
✦ Научиться останавливаться на debugger / breakpoints
✦ Научиться получать данные Chrome Push Notification
Slide 172
Slide 172 text
https://gauntface.github.io/simple-push-demo/
Slide 173
Slide 173 text
https://gauntface.github.io/simple-push-demo/
Slide 174
Slide 174 text
Планы на будущее
96
✦ Научиться останавливаться на debugger / breakpoints
✦ Научиться получать данные Chrome Push Notification
Slide 175
Slide 175 text
Планы на будущее
96
✦ Научиться останавливаться на debugger / breakpoints
✦ Научиться получать данные Chrome Push Notification
✦ Поддержка Android
Slide 176
Slide 176 text
Планы на будущее
96
✦ Научиться останавливаться на debugger / breakpoints
✦ Научиться получать данные Chrome Push Notification
✦ Поддержка Android
✦ Поддержка Windows (для chrome-wrapper)
Slide 177
Slide 177 text
Планы на будущее
96
✦ Научиться останавливаться на debugger / breakpoints
✦ Научиться получать данные Chrome Push Notification
✦ Поддержка Android
✦ Поддержка Windows (для chrome-wrapper)
✦ Поддержка Firefox / Edge
Slide 178
Slide 178 text
Сегодня я многое понял…
97
Slide 179
Slide 179 text
Сегодня я многое понял…
✦ Как видеть HTTP запросы во время прохождения теста
97
Slide 180
Slide 180 text
Сегодня я многое понял…
✦ Как видеть HTTP запросы во время прохождения теста
✦ Как видеть выполнение теста
97
Slide 181
Slide 181 text
Сегодня я многое понял…
✦ Как видеть HTTP запросы во время прохождения теста
✦ Как видеть выполнение теста
✦ Как использовать все инструменты из Chrome DevTools
97