SlideShare a Scribd company logo
Тестирование iOS и Android приложений

Практическое руководство
Кто о чем
Никифоров Олег
в компании
Android apps
iOS apps
UX/UI Design

http://stanfy.com

• Особенности
тестирования
мобильных
приложений
• Подготовка к процессу
тестирования
• Виды тестирования в
мобайл
• База для тестирования
• Полезные тулзы
Особенности тестирования
мобильных приложений
•
•
•
•
•
•
•
•
•

Форм факторы
Управление жестами
Разные типы соединения
Взаимодействие с соц. сетями
Достижения (achievements)
Уведомления (push notifications)
Работа с медиа
Привязка к локальным настройкам
Упор на визуальную составляющую
Форм факторы
Smartphone:
• Landscape
• Portrait
Tablet:
• 10 inch
• 7 inch

Разный интерфейс, размер элементов, удобство их расположения
Жесты
• Стандартные действия к
которым привыкли
пользователи
• Кастомные действия на
стандартные жесты
• Кастомные жесты
• Несколько свайпов на одном
экране
Разные типы соединения
3G

•
•
•
•
•

Edge

Переключение между 3g и wifi
Вес запросов/ответов
Upload/download - пауза, прерывание
Tайм ауты
Потеря связи

WiFi
Взаимодействие с соц. сетями
• Авторизация через соц сети
• Шаринг
• Постинг сообщений: картинки,
ссылки
• Комментарии
• Login/logout апп/браузер/настройки
девайса (iOS)
Achievements
• Привязанные к времени (пользовался 2 недели)
• Привязанные к действиям - как срабатывают
• Шаринг ачивок
Push notifications
• Получение
• Открытие соответствующей страницы
• Обработка ошибок (например объекта на который
ссылается уведомление больше не существует, пустое
уведомление, etc.)
Работа с медиа
Работа с медиа (фото, видео, звук) и
внешней периферией:
• Использование фото из
библиотеки/камеры использование
панорам
• Работа с микрофоном (в том числе
внешней гарнитурой)

• Воспроизведение аудио/видео
(пауза, обработка
входящих/исходящих
звонков, сообщений).
Привязка к локальным настройкам
• Привязка к времени/локализации/региону:
• Язык приложения в зависимости от настроек
девайса
• Время с привязкой к часовому поясу
• Язык получаемого контента в зависимости от
настроек девайса
• Формат даты/времени в зависимости от
региональных настроек
• Меры веса/объема/температуры в зависимости от
региональных настроек
Упор на визуальную составляющую
•
•
•
•
•

Размеры кнопок в зависимости от локали
Шрифты
Размытые картинки
Ресурсы соответствующие разрешению экрана
Анимации
Начало процесса

• Работа с
требованиями, прототипами, первоначальным
дизайном (mock-ups) - основной смысл - понять

flow приложения
• Ознакомление с API документацией
• Написание API тестов
• Создание mind maps по приложению
Типы тестирования
• Manual
• Automated ui:
o Calabash
o Frank
o Robotium
o UI Automation
o Appium
• Automated api:
o Soapui
o Loadui
База для тестирования
• Use cases которые относятся непосредственно к тестируемому
приложению 30% - 50%
• Specifications общие для системы - iOS/Android 10% - 20%
• Common cases - use cases которые общие для определенного
типа приложений, в том числе и для отдельных компонентов
приложения в определенной системе (списки, scrollview, alerts,
etc.) 5% - 15%
• Testing patterns - граничные значения, выборки, etc 5% - 10%
• Чуйка ;) 20% - ∞
iOS testing mind map
Android
• Проверять на разных девайсах:
o разный размер экранов > отображение контента
o разная плотность экранов (pixel density) > отображение графических
элементов (внешний вид иконок, кнопок, текста, etc.)
• Проверять на разных прошивках:
o Проигрывание медиа файлов;
o Action bar;
o Кастомные анимации;
o Web view.

• Проверка на работу приложения во время звонка:
o Если в приложении есть сервисы, которые работают в фоне со звуком
(воспроизведение музыки в фоне) > надо проверять, как приложение
себя ведет при поступлении звонка на девайс;
o Если в приложении нет сервисов, которые работают в фоне со звуком >
можно ограничиться проверкой перевода аппа в background.
Тулзы которые помогают при тестировании
мобильных приложений
• IDE:
o Eclipse + DDMS + Sim
o Xcode + Organizer + Sim
• Visual:
o Reflector
o Jing
o DDMS - capture android
device
• Network:
o Sniffers/proxy (Burp, tcp
catcher, charles, etc.)
o Network Link Conditioner

• Location:
o iOS Sim
o Fake Location (Android)
o Eclipse

• Other:
o iPhone Configuration Utility
- manage certs
o XMind
o Crashlytics
IDE
• Android:
o Eclipse https://www.eclipse.org
o DDMS
http://developer.android.com/tools/debugging/ddms.html
o Simulator
• iOS:
o Xcode
https://developer.apple.com/xcode/
o AppCode
http://www.jetbrains.com/objc/
o Simulator
Visual

•
•
•
•

Reflector http://www.airsquirrels.com/reflector/
Jing http://www.techsmith.com/jing.html
DDMS - capture android device
Droid-at-Screen
http://droid-at-screen.ribomation.com/
Network

• Sniffers/proxy:
o Burp Suite http://portswigger.net/burp/
o Tcp Catcher http://www.tcpcatcher.org/download.php
o Charles proxy http://www.charlesproxy.com/
• Network Link Conditioner
Location
• iOS Sim
• Fake GPS location (Android)
https://play.google.com/store/app
s/details?id=com.lexa.fakegps&hl=
en

• Eclipse
Other
• iPhone Configuration Utility
http://support.apple.com/downloads/#iphone configuration utility

• XMind http://www.xmind.net
• Crashlytics http://try.crashlytics.com
Tips and Tricks
• Апдейт приложения - сохранять данные
(мигрирование БД)
• Пользовательские данные и iCloud
• Crashlytics и смена бандла
• Crashlytics и дебаг
• Crashlytics и Hockeyapp
• Флури
• NSLog и время на обработку крэша
• Пересоздание активности в android при смене
ориентации
• Кэширование
• Auth token
• Обработка серверных ошибок
• Server error vs. no connection
navisnobilite
nikiphor@hotmail.com

More Related Content

What's hot

Автоматическое тестирование мобильных приложений на основе скриншотов
Автоматическое тестирование мобильных приложений на основе скриншотовАвтоматическое тестирование мобильных приложений на основе скриншотов
Автоматическое тестирование мобильных приложений на основе скриншотов
Sergey Borisov
 
тестирование ios как процесс
тестирование ios как процесстестирование ios как процесс
тестирование ios как процессtouchin
 
Джентельменский набор тест-лида
Джентельменский набор тест-лидаДжентельменский набор тест-лида
Джентельменский набор тест-лида
SQALab
 
Особенности удаленных исследований, или как протестировать продукт без лабор...
 Особенности удаленных исследований, или как протестировать продукт без лабор... Особенности удаленных исследований, или как протестировать продукт без лабор...
Особенности удаленных исследований, или как протестировать продукт без лабор...
it-people
 
Инструменты автоматизации тестирования мобильных приложений. Сравнительный ан...
Инструменты автоматизации тестирования мобильных приложений. Сравнительный ан...Инструменты автоматизации тестирования мобильных приложений. Сравнительный ан...
Инструменты автоматизации тестирования мобильных приложений. Сравнительный ан...ISsoft
 
Mobile automation uamobile
Mobile automation uamobileMobile automation uamobile
Mobile automation uamobileUA Mobile
 
Виртуализация и автоматизация тестирования мобильных приложений
Виртуализация и автоматизация тестирования мобильных приложенийВиртуализация и автоматизация тестирования мобильных приложений
Виртуализация и автоматизация тестирования мобильных приложений
SQALab
 

What's hot (7)

Автоматическое тестирование мобильных приложений на основе скриншотов
Автоматическое тестирование мобильных приложений на основе скриншотовАвтоматическое тестирование мобильных приложений на основе скриншотов
Автоматическое тестирование мобильных приложений на основе скриншотов
 
тестирование ios как процесс
тестирование ios как процесстестирование ios как процесс
тестирование ios как процесс
 
Джентельменский набор тест-лида
Джентельменский набор тест-лидаДжентельменский набор тест-лида
Джентельменский набор тест-лида
 
Особенности удаленных исследований, или как протестировать продукт без лабор...
 Особенности удаленных исследований, или как протестировать продукт без лабор... Особенности удаленных исследований, или как протестировать продукт без лабор...
Особенности удаленных исследований, или как протестировать продукт без лабор...
 
Инструменты автоматизации тестирования мобильных приложений. Сравнительный ан...
Инструменты автоматизации тестирования мобильных приложений. Сравнительный ан...Инструменты автоматизации тестирования мобильных приложений. Сравнительный ан...
Инструменты автоматизации тестирования мобильных приложений. Сравнительный ан...
 
Mobile automation uamobile
Mobile automation uamobileMobile automation uamobile
Mobile automation uamobile
 
Виртуализация и автоматизация тестирования мобильных приложений
Виртуализация и автоматизация тестирования мобильных приложенийВиртуализация и автоматизация тестирования мобильных приложений
Виртуализация и автоматизация тестирования мобильных приложений
 

Viewers also liked

Testing of mobile apps
Testing of mobile appsTesting of mobile apps
Testing of mobile apps
ISsoft
 
Aндрей Mасалович. Конкурентная разведка в Интернете.
Aндрей Mасалович. Конкурентная разведка в Интернете.Aндрей Mасалович. Конкурентная разведка в Интернете.
Aндрей Mасалович. Конкурентная разведка в Интернете.Positive Hack Days
 
Дмитрий Угрюмов. Анонимность в Интернете: средства, методы, уязвимости и все-...
Дмитрий Угрюмов. Анонимность в Интернете: средства, методы, уязвимости и все-...Дмитрий Угрюмов. Анонимность в Интернете: средства, методы, уязвимости и все-...
Дмитрий Угрюмов. Анонимность в Интернете: средства, методы, уязвимости и все-...Positive Hack Days
 
how to use fiddler (Ver eng)
how to use fiddler (Ver eng)how to use fiddler (Ver eng)
how to use fiddler (Ver eng)
용진 조
 
REST vs. SOAP
REST vs. SOAPREST vs. SOAP
REST vs. SOAP
Murat Çakal
 
Эвристики, мнемоники и другие греческие слова в исследовательском тестировани...
Эвристики, мнемоники и другие греческие слова в исследовательском тестировани...Эвристики, мнемоники и другие греческие слова в исследовательском тестировани...
Эвристики, мнемоники и другие греческие слова в исследовательском тестировани...
SQALab
 
Как Web-акселератор акселерирует ваш сайт / Александр Крижановский (Tempesta ...
Как Web-акселератор акселерирует ваш сайт / Александр Крижановский (Tempesta ...Как Web-акселератор акселерирует ваш сайт / Александр Крижановский (Tempesta ...
Как Web-акселератор акселерирует ваш сайт / Александр Крижановский (Tempesta ...
Ontico
 
Mobile testing. Tips and tricks
Mobile testing. Tips and tricksMobile testing. Tips and tricks
Mobile testing. Tips and tricks
SQALab
 
Web Services - A brief overview
Web Services -  A brief overviewWeb Services -  A brief overview
Web Services - A brief overviewRaveendra Bhat
 
Proxy Servers
Proxy ServersProxy Servers
Proxy Servers
Sourav Roy
 
Web services - A Practical Approach
Web services - A Practical ApproachWeb services - A Practical Approach
Web services - A Practical Approach
Madhaiyan Muthu
 
JSON and REST
JSON and RESTJSON and REST
JSON and REST
Robert MacLean
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
Peter R. Egli
 
Proxy Servers & Firewalls
Proxy Servers & FirewallsProxy Servers & Firewalls
Proxy Servers & Firewalls
Mehdi Poustchi Amin
 

Viewers also liked (16)

Testing of mobile apps
Testing of mobile appsTesting of mobile apps
Testing of mobile apps
 
Aндрей Mасалович. Конкурентная разведка в Интернете.
Aндрей Mасалович. Конкурентная разведка в Интернете.Aндрей Mасалович. Конкурентная разведка в Интернете.
Aндрей Mасалович. Конкурентная разведка в Интернете.
 
Дмитрий Угрюмов. Анонимность в Интернете: средства, методы, уязвимости и все-...
Дмитрий Угрюмов. Анонимность в Интернете: средства, методы, уязвимости и все-...Дмитрий Угрюмов. Анонимность в Интернете: средства, методы, уязвимости и все-...
Дмитрий Угрюмов. Анонимность в Интернете: средства, методы, уязвимости и все-...
 
how to use fiddler (Ver eng)
how to use fiddler (Ver eng)how to use fiddler (Ver eng)
how to use fiddler (Ver eng)
 
Soap vs rest
Soap vs restSoap vs rest
Soap vs rest
 
REST vs. SOAP
REST vs. SOAPREST vs. SOAP
REST vs. SOAP
 
Эвристики, мнемоники и другие греческие слова в исследовательском тестировани...
Эвристики, мнемоники и другие греческие слова в исследовательском тестировани...Эвристики, мнемоники и другие греческие слова в исследовательском тестировани...
Эвристики, мнемоники и другие греческие слова в исследовательском тестировани...
 
Как Web-акселератор акселерирует ваш сайт / Александр Крижановский (Tempesta ...
Как Web-акселератор акселерирует ваш сайт / Александр Крижановский (Tempesta ...Как Web-акселератор акселерирует ваш сайт / Александр Крижановский (Tempesta ...
Как Web-акселератор акселерирует ваш сайт / Александр Крижановский (Tempesta ...
 
Mobile testing. Tips and tricks
Mobile testing. Tips and tricksMobile testing. Tips and tricks
Mobile testing. Tips and tricks
 
Web Services - A brief overview
Web Services -  A brief overviewWeb Services -  A brief overview
Web Services - A brief overview
 
Proxy Servers
Proxy ServersProxy Servers
Proxy Servers
 
Web services - A Practical Approach
Web services - A Practical ApproachWeb services - A Practical Approach
Web services - A Practical Approach
 
JSON and REST
JSON and RESTJSON and REST
JSON and REST
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
 
Proxy Servers & Firewalls
Proxy Servers & FirewallsProxy Servers & Firewalls
Proxy Servers & Firewalls
 
Proxy Server
Proxy ServerProxy Server
Proxy Server
 

Similar to Introduction to Mobile applications testing

Кроссплатформенная разработка
Кроссплатформенная разработкаКроссплатформенная разработка
Кроссплатформенная разработкаValery
 
тестирование снецифических областей
тестирование снецифических областейтестирование снецифических областей
тестирование снецифических областей
DressTester
 
Mobile Automation based on Appium
Mobile Automation based on AppiumMobile Automation based on Appium
Mobile Automation based on Appium
Anton Sirota
 
Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android
Unity: "Очевидное-невероятное” или хитрости разработки на Unity AndroidUnity: "Очевидное-невероятное” или хитрости разработки на Unity Android
Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android
DevGAMM Conference
 
Виды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спроститьВиды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спростить
GoIT
 
Владислав Акулич - Monkey Talk - кроссплатформенное средство автоматизации те...
Владислав Акулич - Monkey Talk - кроссплатформенное средство автоматизации те...Владислав Акулич - Monkey Talk - кроссплатформенное средство автоматизации те...
Владислав Акулич - Monkey Talk - кроссплатформенное средство автоматизации те...
COMAQA.BY
 
Mobile accessibility Testing / Тестирование доступности мобильного веба
Mobile accessibility Testing / Тестирование доступности мобильного вебаMobile accessibility Testing / Тестирование доступности мобильного веба
Mobile accessibility Testing / Тестирование доступности мобильного веба
Diana Shymbaliova
 
Me12 usabiliti-mobile
Me12 usabiliti-mobileMe12 usabiliti-mobile
Me12 usabiliti-mobile
Alexey Smirnov
 
Есть ли жизнь после релиза мобильного приложения?
Есть ли жизнь после релиза мобильного приложения?Есть ли жизнь после релиза мобильного приложения?
Есть ли жизнь после релиза мобильного приложения?
Alexander Khozya
 
Доклад Александра Хози и Николая Козлова на Mobile ConfetQA. "Есть ли жизнь п...
Доклад Александра Хози и Николая Козлова на Mobile ConfetQA. "Есть ли жизнь п...Доклад Александра Хози и Николая Козлова на Mobile ConfetQA. "Есть ли жизнь п...
Доклад Александра Хози и Николая Козлова на Mobile ConfetQA. "Есть ли жизнь п...
Badoo Development
 
Appium confet qa
Appium confet qaAppium confet qa
Appium confet qaISsoft
 
marsrutki
marsrutkimarsrutki
marsrutki
yarik_xny
 
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
SECON
 
Основной продукт vs. мобильный (Анатолий Шарифулин, Ostovok.ru)
Основной продукт vs. мобильный (Анатолий Шарифулин, Ostovok.ru)Основной продукт vs. мобильный (Анатолий Шарифулин, Ostovok.ru)
Основной продукт vs. мобильный (Анатолий Шарифулин, Ostovok.ru)
PCampRussia
 
Основной продукт vs. мобильный на примере Ostrovok.ru
Основной продукт vs. мобильный на примере Ostrovok.ruОсновной продукт vs. мобильный на примере Ostrovok.ru
Основной продукт vs. мобильный на примере Ostrovok.ru
Anatoly Sharifulin
 
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВРАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВPavel Tsukanov
 
Автоматизация тестирования iOS и Android приложений
Автоматизация тестирования iOS и Android приложенийАвтоматизация тестирования iOS и Android приложений
Автоматизация тестирования iOS и Android приложений
Andrei Pugachev
 
Gtug.sucks.vs.rules
Gtug.sucks.vs.rulesGtug.sucks.vs.rules
Gtug.sucks.vs.rules
Alexey Smirnov
 
Solit 2014, Appium. Тестируем гибридные мобильные прирложения в стиле webdriv...
Solit 2014, Appium. Тестируем гибридные мобильные прирложения в стиле webdriv...Solit 2014, Appium. Тестируем гибридные мобильные прирложения в стиле webdriv...
Solit 2014, Appium. Тестируем гибридные мобильные прирложения в стиле webdriv...
solit
 
Аналитика мобильных приложений
Аналитика мобильных приложенийАналитика мобильных приложений
Аналитика мобильных приложений
Anatoly Sharifulin
 

Similar to Introduction to Mobile applications testing (20)

Кроссплатформенная разработка
Кроссплатформенная разработкаКроссплатформенная разработка
Кроссплатформенная разработка
 
тестирование снецифических областей
тестирование снецифических областейтестирование снецифических областей
тестирование снецифических областей
 
Mobile Automation based on Appium
Mobile Automation based on AppiumMobile Automation based on Appium
Mobile Automation based on Appium
 
Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android
Unity: "Очевидное-невероятное” или хитрости разработки на Unity AndroidUnity: "Очевидное-невероятное” или хитрости разработки на Unity Android
Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android
 
Виды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спроститьВиды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спростить
 
Владислав Акулич - Monkey Talk - кроссплатформенное средство автоматизации те...
Владислав Акулич - Monkey Talk - кроссплатформенное средство автоматизации те...Владислав Акулич - Monkey Talk - кроссплатформенное средство автоматизации те...
Владислав Акулич - Monkey Talk - кроссплатформенное средство автоматизации те...
 
Mobile accessibility Testing / Тестирование доступности мобильного веба
Mobile accessibility Testing / Тестирование доступности мобильного вебаMobile accessibility Testing / Тестирование доступности мобильного веба
Mobile accessibility Testing / Тестирование доступности мобильного веба
 
Me12 usabiliti-mobile
Me12 usabiliti-mobileMe12 usabiliti-mobile
Me12 usabiliti-mobile
 
Есть ли жизнь после релиза мобильного приложения?
Есть ли жизнь после релиза мобильного приложения?Есть ли жизнь после релиза мобильного приложения?
Есть ли жизнь после релиза мобильного приложения?
 
Доклад Александра Хози и Николая Козлова на Mobile ConfetQA. "Есть ли жизнь п...
Доклад Александра Хози и Николая Козлова на Mobile ConfetQA. "Есть ли жизнь п...Доклад Александра Хози и Николая Козлова на Mobile ConfetQA. "Есть ли жизнь п...
Доклад Александра Хози и Николая Козлова на Mobile ConfetQA. "Есть ли жизнь п...
 
Appium confet qa
Appium confet qaAppium confet qa
Appium confet qa
 
marsrutki
marsrutkimarsrutki
marsrutki
 
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
 
Основной продукт vs. мобильный (Анатолий Шарифулин, Ostovok.ru)
Основной продукт vs. мобильный (Анатолий Шарифулин, Ostovok.ru)Основной продукт vs. мобильный (Анатолий Шарифулин, Ostovok.ru)
Основной продукт vs. мобильный (Анатолий Шарифулин, Ostovok.ru)
 
Основной продукт vs. мобильный на примере Ostrovok.ru
Основной продукт vs. мобильный на примере Ostrovok.ruОсновной продукт vs. мобильный на примере Ostrovok.ru
Основной продукт vs. мобильный на примере Ostrovok.ru
 
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВРАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
 
Автоматизация тестирования iOS и Android приложений
Автоматизация тестирования iOS и Android приложенийАвтоматизация тестирования iOS и Android приложений
Автоматизация тестирования iOS и Android приложений
 
Gtug.sucks.vs.rules
Gtug.sucks.vs.rulesGtug.sucks.vs.rules
Gtug.sucks.vs.rules
 
Solit 2014, Appium. Тестируем гибридные мобильные прирложения в стиле webdriv...
Solit 2014, Appium. Тестируем гибридные мобильные прирложения в стиле webdriv...Solit 2014, Appium. Тестируем гибридные мобильные прирложения в стиле webdriv...
Solit 2014, Appium. Тестируем гибридные мобильные прирложения в стиле webdriv...
 
Аналитика мобильных приложений
Аналитика мобильных приложенийАналитика мобильных приложений
Аналитика мобильных приложений
 

Introduction to Mobile applications testing

  • 1. Тестирование iOS и Android приложений Практическое руководство
  • 2. Кто о чем Никифоров Олег в компании Android apps iOS apps UX/UI Design http://stanfy.com • Особенности тестирования мобильных приложений • Подготовка к процессу тестирования • Виды тестирования в мобайл • База для тестирования • Полезные тулзы
  • 3. Особенности тестирования мобильных приложений • • • • • • • • • Форм факторы Управление жестами Разные типы соединения Взаимодействие с соц. сетями Достижения (achievements) Уведомления (push notifications) Работа с медиа Привязка к локальным настройкам Упор на визуальную составляющую
  • 4. Форм факторы Smartphone: • Landscape • Portrait Tablet: • 10 inch • 7 inch Разный интерфейс, размер элементов, удобство их расположения
  • 5. Жесты • Стандартные действия к которым привыкли пользователи • Кастомные действия на стандартные жесты • Кастомные жесты • Несколько свайпов на одном экране
  • 6. Разные типы соединения 3G • • • • • Edge Переключение между 3g и wifi Вес запросов/ответов Upload/download - пауза, прерывание Tайм ауты Потеря связи WiFi
  • 7. Взаимодействие с соц. сетями • Авторизация через соц сети • Шаринг • Постинг сообщений: картинки, ссылки • Комментарии • Login/logout апп/браузер/настройки девайса (iOS)
  • 8. Achievements • Привязанные к времени (пользовался 2 недели) • Привязанные к действиям - как срабатывают • Шаринг ачивок
  • 9. Push notifications • Получение • Открытие соответствующей страницы • Обработка ошибок (например объекта на который ссылается уведомление больше не существует, пустое уведомление, etc.)
  • 10. Работа с медиа Работа с медиа (фото, видео, звук) и внешней периферией: • Использование фото из библиотеки/камеры использование панорам • Работа с микрофоном (в том числе внешней гарнитурой) • Воспроизведение аудио/видео (пауза, обработка входящих/исходящих звонков, сообщений).
  • 11. Привязка к локальным настройкам • Привязка к времени/локализации/региону: • Язык приложения в зависимости от настроек девайса • Время с привязкой к часовому поясу • Язык получаемого контента в зависимости от настроек девайса • Формат даты/времени в зависимости от региональных настроек • Меры веса/объема/температуры в зависимости от региональных настроек
  • 12. Упор на визуальную составляющую • • • • • Размеры кнопок в зависимости от локали Шрифты Размытые картинки Ресурсы соответствующие разрешению экрана Анимации
  • 13. Начало процесса • Работа с требованиями, прототипами, первоначальным дизайном (mock-ups) - основной смысл - понять flow приложения • Ознакомление с API документацией • Написание API тестов • Создание mind maps по приложению
  • 14. Типы тестирования • Manual • Automated ui: o Calabash o Frank o Robotium o UI Automation o Appium • Automated api: o Soapui o Loadui
  • 15. База для тестирования • Use cases которые относятся непосредственно к тестируемому приложению 30% - 50% • Specifications общие для системы - iOS/Android 10% - 20% • Common cases - use cases которые общие для определенного типа приложений, в том числе и для отдельных компонентов приложения в определенной системе (списки, scrollview, alerts, etc.) 5% - 15% • Testing patterns - граничные значения, выборки, etc 5% - 10% • Чуйка ;) 20% - ∞
  • 17. Android • Проверять на разных девайсах: o разный размер экранов > отображение контента o разная плотность экранов (pixel density) > отображение графических элементов (внешний вид иконок, кнопок, текста, etc.) • Проверять на разных прошивках: o Проигрывание медиа файлов; o Action bar; o Кастомные анимации; o Web view. • Проверка на работу приложения во время звонка: o Если в приложении есть сервисы, которые работают в фоне со звуком (воспроизведение музыки в фоне) > надо проверять, как приложение себя ведет при поступлении звонка на девайс; o Если в приложении нет сервисов, которые работают в фоне со звуком > можно ограничиться проверкой перевода аппа в background.
  • 18. Тулзы которые помогают при тестировании мобильных приложений • IDE: o Eclipse + DDMS + Sim o Xcode + Organizer + Sim • Visual: o Reflector o Jing o DDMS - capture android device • Network: o Sniffers/proxy (Burp, tcp catcher, charles, etc.) o Network Link Conditioner • Location: o iOS Sim o Fake Location (Android) o Eclipse • Other: o iPhone Configuration Utility - manage certs o XMind o Crashlytics
  • 19. IDE • Android: o Eclipse https://www.eclipse.org o DDMS http://developer.android.com/tools/debugging/ddms.html o Simulator • iOS: o Xcode https://developer.apple.com/xcode/ o AppCode http://www.jetbrains.com/objc/ o Simulator
  • 20. Visual • • • • Reflector http://www.airsquirrels.com/reflector/ Jing http://www.techsmith.com/jing.html DDMS - capture android device Droid-at-Screen http://droid-at-screen.ribomation.com/
  • 21. Network • Sniffers/proxy: o Burp Suite http://portswigger.net/burp/ o Tcp Catcher http://www.tcpcatcher.org/download.php o Charles proxy http://www.charlesproxy.com/ • Network Link Conditioner
  • 22. Location • iOS Sim • Fake GPS location (Android) https://play.google.com/store/app s/details?id=com.lexa.fakegps&hl= en • Eclipse
  • 23. Other • iPhone Configuration Utility http://support.apple.com/downloads/#iphone configuration utility • XMind http://www.xmind.net • Crashlytics http://try.crashlytics.com
  • 24.
  • 25.
  • 26. Tips and Tricks • Апдейт приложения - сохранять данные (мигрирование БД) • Пользовательские данные и iCloud • Crashlytics и смена бандла • Crashlytics и дебаг • Crashlytics и Hockeyapp • Флури • NSLog и время на обработку крэша • Пересоздание активности в android при смене ориентации • Кэширование • Auth token • Обработка серверных ошибок • Server error vs. no connection