Михаил Левин: Автоматизация в мобильном тестировании

22
Руководитель службы тестирования Михаил Левин Автоматизация тестирования мобильных приложений Тестовая среда, 30.11.13

description

Задача автоматизации тестирования мобильных приложений сейчас очень актуальна. Это точка приложения усилий многих команд, которые занимаются мобильными приложениями и разрабатывают фреймворки. В докладе я расскажу о предпосылках возникновения интереса к этой теме и о том, какие инструменты мобильного тестирования сейчас существуют и какие использует Яндекс. Вы узнаете также о проблемах, с которыми мы столкнулись на пути к удобной и дешёвой автоматизации тестирования и о том, какие из них нам ещё предстоит решить.

Transcript of Михаил Левин: Автоматизация в мобильном тестировании

Page 1: Михаил Левин: Автоматизация в мобильном тестировании

Руководитель службы тестированияМихаил Левин

Автоматизация тестирования мобильных приложений

Тестовая среда, 30.11.13

Page 2: Михаил Левин: Автоматизация в мобильном тестировании

2

Зачем?

Сокращение ручно

й

регрессии

Cовместимость клиента

с сервером

Быстрый фидбек

Page 3: Михаил Левин: Автоматизация в мобильном тестировании

3

От Web к Mobile

Page 4: Михаил Левин: Автоматизация в мобильном тестировании

Актуальные платформы

Page 5: Михаил Левин: Автоматизация в мобильном тестировании

Выбор

5

Page 6: Михаил Левин: Автоматизация в мобильном тестировании

6

Фреймворки и среды

Page 7: Михаил Левин: Автоматизация в мобильном тестировании

7

?Фреймворки и среды. WP8

Page 8: Михаил Левин: Автоматизация в мобильном тестировании

8

Выбор инструментов

CI и Параллельность

Открытый инструментарий

Инструментирование кодаПоддержка webview

Языки программирования

Наличие испектора объектов

Page 9: Михаил Левин: Автоматизация в мобильном тестировании

KeepItFuctional

9

Инструменты для IOS или Android

IOS-driver

Monkey Runner

Selendroid

Robotium

UI Automator

UI Automation

Page 10: Михаил Левин: Автоматизация в мобильном тестировании

10

Инструменты для Android и iOS

+

Page 11: Михаил Левин: Автоматизация в мобильном тестировании

11

Инструменты для Android и iOS

UI Automation

UI AutomatorWebdriver API Selendroid

Page 12: Михаил Левин: Автоматизация в мобильном тестировании

12

Инструменты для Android и iOS

Page 13: Михаил Левин: Автоматизация в мобильном тестировании

13

Где исполнять тесты

Page 14: Михаил Левин: Автоматизация в мобильном тестировании

14

Инструменты. Наш выбор

Junit4 - Allure - SeleniumGrid - Appium - Emulators

Page 15: Михаил Левин: Автоматизация в мобильном тестировании

1516

Специфика эмуляторов

Очистка эмуляторов

Браузеры

Переключение между приложениями Скриншоты

Xpath и IDs

Параллельный запуск

Тонкости и грабли

Page 16: Михаил Левин: Автоматизация в мобильном тестировании

16

Настройка для Selenium Grid

:4721

:4722

:4723

Grid

VT

Page 17: Михаил Левин: Автоматизация в мобильном тестировании

17

Настройка для Selenium Grid

Grid

Page 18: Михаил Левин: Автоматизация в мобильном тестировании

18

Android Локаторы

....."node" : {"@enabled" : "true","@focusable" : "true","@index" : "0","@text" : "","@resource-id" : "ru.yandex.music:id/add_menu_img","@checkable" : "false","@scrollable" : "false","@package" : "ru.yandex.music","@class" : "android.widget.ImageButton","@password" : "false","@long-clickable" : "false","@bounds" : "[642,82][748,188]","@selected" : "false","@content-desc" : "","@NAF" : "true","@focused" : "false","@clickable" : "true","@checked" : "false" }.....

Инспектор Appium

Структура экрана

Page 19: Михаил Левин: Автоматизация в мобильном тестировании

19

Подготовка эмулятора к запуску тестов

appium --full-reset

Apple Script

Page 20: Михаил Левин: Автоматизация в мобильном тестировании

20

iOS. Скриншоты

Page 21: Михаил Левин: Автоматизация в мобильном тестировании

21

WP8 и др.

Эффективные области применения

Работоспособность в эмуляторе

Page 22: Михаил Левин: Автоматизация в мобильном тестировании

Руководитель службы

Спасибо!

Михаил Левин

[email protected]

@lev_sha