Upload
automated-testinginfo
View
2.976
Download
3
Embed Size (px)
DESCRIPTION
Швейцарский нож для Android, Сергей Высоцкий При тестировании мобильных приложений порой возникают проблемы, адекватный разбор которых возможен только непосредственно на устройстве. Увы поставщики смартфонов и софта для написания мобильного ПО не предоставляют практически никаких средств для подобной работы. Сергей расскажет, как при помощи python’а и небольшой сноровки получить маленький централизованный аналитический центр, к которому можно подключить на лету практически любое устройство. А также какие проблемы встречаются при попытках измерить производительность на мобильных устройствах (и через мобильную сеть) и как их проще искать. Это меньше ста строчек кода и море удовольствия.
Citation preview
Швейцарский нож Швейцарский нож для Androidдля Android
http://www.flickr.com/photos/31607658@N00/4527169403/
Привет, я — Сергей ВысоцкийПривет, я — Сергей Высоцкий
@GoblinGame@GoblinGame
Я тестировщик в 2GIS
Сегодня я расскажу
- Тяготы работы с телефоном- Средства выживания- Как ими пользоваться
http://www.flickr.com/photos/21273826@N04/6987448952/
- Тяготы работы с телефоном- Тяготы работы с телефоном- Средства выживания- Средства выживания- Как ими пользоваться- Как ими пользоваться
''Плохой'' интернет
http://www.flickr.com/photos/29609591@N08/6973208137/sizes/l/
ПогодаПогода
http://www.flickr.com/photos/counterxattack/2827812861/sizes/l/
ЛюдностьЛюдность
http://www.flickr.com/photos/thomashawk/3986602351/sizes/l/
ЗастройкаЗастройка
Слабое ''железо''
Разнообразие ''железа'' и софтаРазнообразие ''железа'' и софта
http://www.flickr.com/photos/31607658@N00/4527169403/
http://www.flickr.com/photos/29112900@N08/7471078116/sizes/l/
Производитель заботится о васПроизводитель заботится о вас
http://www.flickr.com/photos/yeoaaron/5840577237/sizes/l/
Для тестирования нужно большеДля тестирования нужно больше
ПроизводительностьСервер? OTA? Телефон? Рендеринг или прием?
Проблемы сетиХарактер проблем? Как скажутся на работе
приложения? Как уменьшить потери?
Состояние устройстваCell id, сигнал, время, железо и софт на
телефоне? Что шлет телефон
Производительность
Проблемы сети
Состояние устройства
http://www.flickr.com/photos/vermininc/3710163860/sizes/l/
- Тяготы работы с телефоном- Тяготы работы с телефоном- Средства выживания- Средства выживания- Как ими пользоваться- Как ими пользоваться
tcpdump
Технически невозможно сделать на большинстве
телефонов
Разделяй и властвуйМожешь что-то не делать на телефоне — не
делай этого на телефоне
Снять tcpdump можно......на шлюзе
...на рабочей машине...на хост системе эмулятора
...на Wi-Fi роутере
Нужно проиграть скриптом!Что нам предлагает SDK?
v Почти Linux Shellx Только через USBx Нужны драйвераx Почти Linux Shell
ADB Shell
SL4Av Python, Perl, Lua и т. д.
v Локальный запуск и работа в фонеv Почти весь Android API
v Скриптинг OTA
http://www.flickr.com/photos/seeminglee/910468505/sizes/l/
- Тяготы работы с телефоном- Тяготы работы с телефоном- Средства выживания- Средства выживания- Как ими пользоваться- Как ими пользоваться
Скрипт с запросами
Телеметрия устройства
Простая установка
Скрипт с запросами
Телеметрия устройства
Простая установка
Скрипт с запросами
Телеметрия устройства
Простая установка
Это же Linux!
Android API
Собираем результаты
Device ServerPOST
Например NGINX
Как различать телефоны в логах?
Каждому телефону свой User-Agent
Скрипт с запросами
Телеметрия устройства
Простая установка
http://www.flickr.com/photos/8816998@N02/5679378435/
NO WAY!NO WAY!
Новый билд!Скачать с SMS бесплатно!
Или написать HTTP клиент на телефон и пустить его в фоне
Device ServerGET
Или написать центр управления телефонами
Device ServerGET
Добавить приложение сюда
Можно запускать приложения
http://www.flickr.com/photos/liquidmoonlightcom/7285438462/sizes/l/
tl;drtl;dr
Для Android существуют скриптовые интерпритаторы
Можно делать даже то, что вендор не разрешил
Можно сделать свое мобильное ''облако''
Спасибо за внимание!