29
Особенности тестирования мобильных приложений Эльвина Сакаева Skype: gooedi Android, iOS

Особенности тестирования мобильных приложений (Android, iOS)

  • Upload
    -

  • View
    12.827

  • Download
    4

Embed Size (px)

DESCRIPTION

Лекция (презентация) для начинающего тестировщика.

Citation preview

Page 1: Особенности тестирования мобильных приложений (Android, iOS)

Особенности

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

Эльвина Сакаева

Skype: gooedi

Android, iOS

Page 2: Особенности тестирования мобильных приложений (Android, iOS)

Особенности

Mobile Документация

Инсталляционное тестирование

Тестирование совместимости

Стресс тестирование

Нагрузочное тестирование

Локализация

Функциональное тестирование

Page 3: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Ориентации/ разрешения экранов

Landscape, portrait

Page 4: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Screen Size Low density

(120) idpi

Medium density

(160) Mdpi

High density

(240) hdpi

Extra high density

(320) Xhdpi

Small QWGA (240x320) 480x640

Normal WQVGA400

(240x400)

WQVGA432

(240x432)

HVGA (320x480)

WVGA800

(480x800)

WVGA854

(480x854)

600x1024

640x960

Large WVGA800

(480x800)

WVGA854

(480x854)

WVGA800

(480x800)

WVGA854

(480x854)

600x1024

Xlarge 1024x600

WXGA(1280x800)

1024x768

1280x768

1536x1152

1920x1152

1920x1200

2048x1536

2560x1536

2560x1600

Page 5: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Ориентации/ разрешения экранов

Landscape, portrait

1 3G

3GS

4 4S 5 iPad mini iPod 4 iPod 5

480x320 960x640 1136x640 1024x768 960×640 1136×640

3,5 4 3,85 3,5 4

163 ppi 326 ppi 163 ppi 326 ppi 326 ppi

Page 6: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду при тестирование

iPad iPad 2 iPad 3 4

1024 x 768 1024 x 768 2048 x 1536

9,7 9,7 9,7

132 ppi 132 ppi 264 ppi

*Учитывать ретина и неретина экраны. На ретина экранах элементы интерфейса / текст будут

мельче. Изображения для ретина-экрана могут попасть в неретина версию и тогда будут очень

большими.

Page 7: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

7 7.5 7.8 8

480x800 480 x 800 768 x 1280

720 x 1280

WVGA WVGA, WXGA, и 720 p

Page 8: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Внешние прерывания

Входящие и исходящие SMS и MMS

Входящие и исходящие звонки

Изъятие аккумулятора

Отключение и подключение usb провода

Отключение и подключение сети

Переход из режима wifi на 3g - и обратно

Отключение и подключение SD-карты

Включение и выключение проигрывателя

Зарядка устройства.

Пуш уведомлениях сторонних приложений

Засыпании устройства

Page 9: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Ресурсы телефона

Как ведет себя приложение при малом количестве места на устройстве

(Недостаток места для установки или работы приложения)

При низком заряде аккумулятора

Установка на карту SD

Очистка данных приложения при удалении его с устройства

С включенным/выключенным gps

Поддержка необходимых медиа-файлов данной моделью и ОС

Page 10: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Локализация приложения

Проверка адекватного обновления (сохраняются все данные пользователя)

Пуш уведомления приложения, и их открытие

Датчик поворота, когда играет музыка

Выход в фон

Переходы в социальные сети …

Проверка работы одного приложения с несколькими пользователями

одновременно (соц. сети) в офлайн/онлайн режиме.

Page 11: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Все элементы должны быть такого размера, чтобы пользователь мог однозначно попасть по ним

Жесты, у всех нажимаемых элементов должно быть нажатое состояние (отклик на действие)

Работа с физической клавиатурой (если в списке поддерживаемых моделей есть такие) – переносы строк, перемещение по ним и т. п.

Соответствие цены и содержимого, заявленного в приложении, тому, что попадает к пользователю.

Восстановление покупки (обновление приложения)

Проверка форматов дат

Нагрузочное (1000 элементов на экране )

Page 12: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Обратная связь с пользователем

Сообщения при загрузке контента / прогресс-бар

Сообщения при ошибке доступа к сети

Наличие сообщений при попытке удалить важную информацию

Наличие экрана / сообщения при окончании процесса / игры

Наличие и синхронность звуковых и вибрационных уведомлений с уведомлениями на экране.

Версии ОС. Приложение не должно устанавливаться на неподдерживаемые устройства, обязательная проверка на всех возможных из поддерживаемых девайсов

Page 13: Особенности тестирования мобильных приложений (Android, iOS)

Что стоило бы не упускать из виду

при тестирование

Smoke test

New functional

Regress

Acception

Перед тестированием приложения

необходимо всегда составлять план работы

Объем/ Что включать

Как часто проводить

На каких устройствах

Page 14: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

Установка приложения на девайс

Перенесение .apk на sdcard

Использование Airdroid

DroidExplorer

Команды в консоли ADB (Android Debug

Bridge)

Testflight

iTunes

Page 15: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

Снятие логов, скриншотов

Использовать ddms.bat (находится в папке

tools) (Android sdk)

CatLog

Screens(Android sdk, ddms.bat)

Android Screenshots and Screen Capture

Testflight

Organizer – Devices

~/Library/Logs/CrashReporter/MobileDevice

Screens: Home + Power

Page 16: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

ddms.bat

Page 17: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

ddms.bat

Page 18: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

Page 19: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

Эмуляторы и симуляторы

Эмулятор Android

Шкурки эмуляторов (Nexus,Samsung )

BlueStacks (W,Linux) 2.3.4

Android-x86 2.2, 3.2, 4.0, 4.2

Симулятор

~/Library/Application Support/iPhone

Simulator/6/Applications/<файл>

Page 20: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

Эмулятор

Скачиваем и устанавливаем :

• Java SE Runtime Environment

• Android SDK (Путь к папке с установленным sdk не должен содержать букв кириллицы)

В Android SDK Manager выбираем необходимые компоненты на установку,

устанавливаем

После завершения всех скачиваний необходимо открыть AVD( Android Virtual

Device Manager) и создать новое виртуальное устройство

Выбираем в списке AVD созданное устройство и запускаем кнопкой “Start”. (Первый раз этот процесс занимает гораздо больше времени, и может

продлиться несколько минут)

Page 21: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

Page 22: Особенности тестирования мобильных приложений (Android, iOS)
Page 23: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам. Инструменты

Многофункциональная утилита для соединения с эмулятором Android или реальным девайсом. Работает в командной строке.

adb shell <cmd> - выполнить команду <cmd> в Android

adb push <local> <remote> - залить файл или директорию на устройство

adb pull <remote> [<local>] - копировать файл или директорию с устройства

adb install < package.apk > - установить пакет

adb uninstall <package.apk> - удалить программу

adb connect <ip:port> - соединиться с Android через сеть. Требует некоторой подготовки устройства, а именно настройку ADB через TCP

adb logcat [filer] - посмотреть вывод логов в реальном времени. Можно задать фильтр.

adb backup - сделать бекап

adb restore <file> - восстановить из бекапа

Android Debug Bridge

Page 24: Особенности тестирования мобильных приложений (Android, iOS)

Помоги себе сам.

TestDroid – это плагин для Эклипса, который позволяет записывать тесты (record&play) в формате Robotium

MonkeyRunner. Позволяет выполнять функциональное тестирование приложения, предоставляя API для управления устройством.

FoneMonkey for Android – бесплатный open source инструмент для тестирования интерфейса.

Robotium – “It's like Selenium, but for Android”

UIAutomation – позволяет выполнять написанные на JavaScript тестовые сценарии как в эмуляторе, так и на устройстве.

Fonemonkey - Record&Play решение, интересно тем, что тесты записываются и редактируются прямо из тестируемого приложения на телефоне или эмуляторе.

Инструменты для автоматизированного

тестирования

Page 25: Особенности тестирования мобильных приложений (Android, iOS)

UIAutomation

Page 26: Особенности тестирования мобильных приложений (Android, iOS)

Интерфейсы мобильных приложений

и сайтов

Специалист по юзабилити Патрик Кокс сформулировал 10 принципов, на которых должна

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

Четкая формулировка задач

Работая над дизайном мобильной версии сайта, мыслите не в терминах страниц, а в

терминах экранов. Каждый экран должен включать в себя не более трех функций или

элементов.

Избегайте перезаполнения

Не используйте выделенного состояния

Избегайте иконок непривычного вида для обозначения типов действий («добавить», «изменить»,

«назад», «вперед» и т. п.)

Пишите крупным шрифтом, просто и понятно

Не пользуйтесь функцией прокрутки без особой необходимости.

Page 27: Особенности тестирования мобильных приложений (Android, iOS)

Интерфейсы мобильных приложений

и сайтов

Используйте элементы содержимого сайта в навигации

Проектируйте сайт как галерею экранов; применяйте творческий подход к организации прогулки посетителей по этой виртуальной галерее.

Уделяйте внимание цветовой гамме

В общем стиле сайта главное — простота

Используйте общеупотребительные слова, смысл которых будет однозначно понятен всем (например «имя пользователя» и «пароль», а не «ник» и «секретный код»)

Обеспечьте возможность обратной связи

Показывайте ход загрузки страницы с помощью анимации

Сохраняйте пустые места

Увеличение высоты строк делает текст более удобным для чтения на экране мобильного устройства.

Page 28: Особенности тестирования мобильных приложений (Android, iOS)
Page 29: Особенности тестирования мобильных приложений (Android, iOS)

Ссылки на

источники

Android SDK: http://developer.android.com/sdk/index.html

Testlight: http://habrahabr.ru/post/133502/

Настройка среды и работа с robotium http://automated-testing.info/knowledgebase/article/nastroyka-sredy-dlya-razrabotki-android-prilozheniy-i-avtomatizacii-na

Android screencapture http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/\

Android-X86 – установка http://habrahabr.ru/post/119931/ http://www.android-x86.org/

Шкурки Эмуляторов http://developer.samsung.com/android/tools-sdks/Samsung-GALAXY-Tab-Emulator

Автоматизированное тестирование http://habrahabr.ru/post/123026/