processes

Get Started. It's Free
or sign up with your email address
processes by Mind Map: processes

1. источники

1.1. Процесс тестирования мобильных приложений, Touch Instinct, октябрь 2013 http://habrahabr.ru/company/touchinstinct/blog/197060/

1.2. Особенности тестирования приложений на мобильных устройствах, Константин Шлыков, июль 2012 http://www.enterra.ru/blog/mobile_qa/

1.3. Особенности тестирования мобильных приложений (Android, iOS), Эльвина Сакаева, июнь 2013, http://www.slideshare.net/ssuseraade67/ss-23372132

1.4. iOS and Android Design Guidelines Cheat Sheet, may 2013, Jake McKibben http://www.kinvey.com/blog/2765/ios-and-android-design-guidelines-cheat-sheet

1.5. Автоматизированное тестирование мобильных приложений, июнь 2011 http://habrahabr.ru/post/123026/

1.6. Инструменты тестирования приложений для мобильных устройств: обзор вариантов и возможностей, Константи Шлыков, апрель 2013 http://www.enterra.ru/blog/tools_for_qa/

2. Первый и самый важный момент заключается в том, что тестирование мобильных телефонов займёт больше времени, чем вы предполагаете, даже если вы и так допускаете, что оно займёт больше времени. (Peter-Paul Koch)

3. полезные ресурсы

3.1. uTest the professional network for testers http://www.utest.com/

4. доп. лит-ра

4.1. Diego Torres Milano “Android Application Testing Guide”

4.2. ux

4.2.1. ux guideline http://guidelines.usability.gov/

5. особенности тестирования игр

5.1. Временные лаги

5.2. Корректное поведение при отключении игроков

5.3. Корректность подключения игроков (напр., списывание баланса только после подключения)

6. другое

6.1. работа приложения в оффлайн/ онлайн режиме

6.1.1. синхронизация данных

6.2. выход из приложения в фон

6.3. стабильность работы в режиме “24 часа и 7 дней в неделю” (особенно в приложениях, взаимодействующих с сервером)

6.4. взаимодействие с др. приложениями (в частности с десктопными) - синхронизация данных (напр, с телефонной книгой, календарем)

7. интеграция со сторонними сервисами

7.1. сборщики статистики

7.1.1. Flurry ios, android, win

7.1.1.1. real-time обновление статистики

7.1.2. Apsalar ios, android

7.1.2.1. наличие средств для проведения опроса пользователей

7.1.3. BuzzBox android

7.1.3.1. наличие средств для регулярной отправки уведомлений пользователям

7.1.4. Google Analytics ios, android

7.1.5. Mixpanel ios, android

7.1.6. Localitics ios, android, win

7.1.7. Bango ios, android, win

7.1.7.1. высокая точность с отслеживанием уникальных ID каждого пользователя

8. тестирование

8.1. инструменты

8.1.1. сервисы бета-тестирования

8.1.1.1. Hockey, Crittercism, TestFairy

8.1.2. инструменты для построения навигационных схем с макетами экранов

8.1.3. TestLink, Eclipse для снятия и небольшого анализа логов.

8.1.4. автоматизированных систем тестирования, требующих время для обработки данных (например, снятие и сравнение скриншотов

8.1.5. логи

8.1.5.1. ios simulator

8.1.5.1.1. 1. run iSimulator >Hardware > Device > manage devices, remember the ID of the device the simulator will be launched for 2. iSimulator > Debug > Open system log > scroll down to the 'Files' > '~/Library/Logs' > CoreSimulator > CrashReporter > find the remembered ID

8.1.5.2. андроид

8.1.6. скриншоты

8.1.6.1. ios

8.1.6.1.1. Screens: Home + Power

8.1.6.2. android

8.1.7. эмуляторы

8.1.7.1. андроид

8.1.7.1.1. blueStacks (win, linux), android

8.1.7.1.2. android SDK

8.1.7.1.3. genymobile http://www.genymobile.com/en/#!/genymotionemulateur-android

8.1.7.2. ios

8.1.7.2.1. ios simulator (included in xcode)

8.1.8. SaaS сервисы и десктоп приложения для автоматизированных тестов, функционального тестирования, тестирования интерфейса, A/B тестирование

8.1.8.1. CloudMonkey (former FoneMonkey) http://www.cloudmonkeymobile.com

8.1.8.2. TestDroid http://testdroid.com/

8.1.8.2.1. Testdroid Recorder is a unique tool for recording user actions, generating reusable Android JUnit test cases and running them in Testdroid Cloud.

8.1.8.3. UIAutomation (ios, included in Xcode)

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

8.1.8.3.2. Компилировать дополнительные библиотеки не требуется

8.1.8.3.3. Начиная с Xcode 4.3 появилась возможность записи тестов через рекодер

8.1.8.4. JamoSolution http://www.jamosolutions.com/

8.1.8.4.1. поддержка iPhone, Android, Windows Mobile и BlackBerry

8.1.8.4.2. поддерживается запись тестов (record&play)

8.1.8.4.3. возможность тестироввания iPhone приложения на Windows

8.1.8.4.4. возможность видеть экран телефона в IDE.

8.1.8.4.5. JamoSolution работает через специального агента на телефоне, то есть ваши приложения останутся не модифицированными

8.1.8.4.6. Телефон может быть подключен проводом или по WiFi

8.1.8.5. eggPlant mobile http://www.testplant.com/eggplant/testing-tools/eggplant-mobile-eggon/ android, ios, win-phone

8.1.8.5.1. позволяет запускать свой тестовый скрипт на множестве устройств одновременно, определяя выходные данные методом распознавания картинки на экране. Поддерживает тестирование на устройствах Android и iOS и их эмуляторах, а так же на эмуляторе Windows Phone. Приложение разработано под Windows, Linux, Mac

8.1.8.6. TestStudio http://www.telerik.com/automated-testing-tools/ios-testing.aspx

8.1.8.6.1. приложение для автоматического тестирования на платформе iOS. Базируется на обращении к компонентам приложения, а не на скриншотах. Имеется как рекодер, так и возможность писать и редактировать тесты вручную. Позволяет тестировать web и native компоненты. Интересная особенность: можно записывать и воспроизводить тесты на устройстве без подключения к компьютеру

8.1.8.7. appium http://appium.io/

8.1.8.7.1. an open-source tool for automating native, mobile web, and hybrid applications on iOS and Android platform

8.1.8.7.2. it allows you to write tests against multiple platforms (iOS, Android), using the same API. This enables code reuse between iOS and Android testsuites.

8.1.8.8. AppThwack https://appthwack.com/ ios, android

8.1.8.8.1. Вы загружаете своё приложение на ресурс, оно устанавливается на настоящие устройства (ассортимент переваливает за сотню) и подвергается «исследованию» – запуск, замеры используемой памяти и загрузки процессоров, выявление ошибок и проблем, нагрузка небольшим манки-тестом. По результатам исследования создаётся отчёт со скриншотами

8.1.8.9. Sikuli http://www.sikuli.org/

8.1.8.9.1. open sourсe инструмент для автоматизации тестирования GUI Java-приложений (в том числе и Android). Открытая кросс-платформенная визуальная среда создания сценариев-скриптов, которая ориентирована на программирование графического интерфейса при помощи изображений (скриншотов)

8.1.8.9.2. Особенность – скрипт, задающий последовательность действий, позволяет использовать скриншоты – чтобы дать команду нажать кнопку, достаточно подставить в скрипт скриншот этой кнопки. Поддерживает написание скриптов на Java и Python

8.1.8.10. сервисы, предоставляющие доступ к реальным девайсам

8.1.8.10.1. - почти нет вмешательства в тестируемое приложение; - один инструмент и тестовый скрипт используется для тестирования на всех мобильных платформах; - многообразие устройств

8.1.8.10.2. Perfecto Mobile http://www.perfectomobile.com

8.1.8.10.3. Device Everywhere

8.1.8.10.4. Appurify http://appurify.com/

8.1.8.11. A/B тестирование

8.1.8.11.1. Vessel https://www.vessel.io/

8.1.8.11.2. apptimize http://apptimize.com/

8.1.8.12. бета-тестирование (crowdsourcing testing)

8.1.8.12.1. Beta Family https://thebetafamily.com/

8.1.9. Захват видео с экрана устройства

8.1.9.1. андроид

8.1.9.1.1. Android screen capture http://sourceforge.net/projects/ashot/

8.2. мультидевайсовое тестирование

8.2.1. различные разрешения экрана (включая портретную и альбомную ориентации)

8.2.1.1. Смена ориентации устройства в режиме ожидания

8.2.1.2. ios: Ретиновые и неретиновые экраны. На ретиновых экранах элементы интерфейса / текст будут мельче. Картинки для ретина-экрана могут попасть в неретина версию и тогда будут очень большими

8.2.2. Поддержка необходимых медиа-файлов данной моделью и ОС - разработчики могут урезать поддержку работы с некоторыми форматами

8.3. Локализация

8.3.1. Проверка того, что все надписи входят в соответствующие формы, кнопки и т.п.

8.3.2. Проверка форматов дат, разделителей в числах

8.3.3. проверка специфических особенностей локализации (точки над буквами и проч.)

8.4. usability

8.4.1. Позволяет выявить части приложения, которые недостаточно привлекательны и/или вызывают затруднения в использовании (навигации и проч)

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

8.4.1.2. пользователь не должен оказываться в ситуации, в которой не очевидно, что сейчас происходит и что делать

8.4.2. Следует проверять наличие или отсутствие «нативных» жестов (pinch-to-zoom, doubletap) – если, например, поддерживается зум части приложения, то должен использоваться жест по умолчанию. А если нет необходимости выделять картинку, то по даблтапу она не должна выделяться.

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

8.4.3.1. Реакция кнопок на нажатие

8.4.3.1.1. Скорость отклика элементов должна быть достаточно высокой. Для пущей проверки можно использовать самые слабые устройства среди поддерживаемых

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

8.4.3.3. Сообщения при ошибке доступа к сети, BT, GPS

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

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

8.4.3.6. пуш уведомления и их открытие

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

8.4.4. изображение иконок, обозначающих распространенные действия (навигация, действия с файлами и проч) - в узнаваемой форме

8.4.5. лаконичный читабельный текст (название контролов, лейблы)

8.4.5.1. употребление общепринятых названий элементов (напр, "имя пользователя", "пароль" вместо "ник" и "секретный код")

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

8.5.1. потребление ресурсов устройства

8.5.1.1. Например, приложения-напоминания не должны вызывать чрезмерное потребление энергии

8.5.1.1.1. Утечки памяти

8.5.2. позволяет выявить “узкие” места в приложении, связанные с производительностью, а также обнаружить опасные утечки памяти.

8.5.2.1. наблюдение за использованием памяти и системных ресурсов

8.5.3. HP Virtual User Generator http://h30499.www3.hp.com/t5/LoadRunner-Support-Forum/HP-Virtual-User-Generator-for-SAP-Business-Objects-Web/td-p/5584401

8.5.3.1. Служит для нагрузки сервера мультиплицированием входящего траффика. Тестировщик создаёт скрипт, запускает его на устройстве, HP VuGen перехватывает траффик и имитирует запросы к серверу с подобной информацией, но от нескольких тысяч или миллионов устройств одновременно

8.6. стресс тестирование

8.6.1. Реакция приложения на внешние прерывания, имитация реальных условий качества связи и окружающей среды. Обычно неочевидно, как поведёт себя приложение, например, при нестабильном сигнале Wi-Fi или с нулевым балансом на счету в сети 3G.

8.6.1.1. Входящие и исходящие SMS, MMS, звонки, оповещения (push уведомления) других приложений

8.6.1.2. Выключение устройства, изъятие аккумулятора, разрядка устройства

8.6.1.3. Переход в режим ожидания (в том числе и с защитой паролем)

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

8.6.1.5. Отключение и включение сети, Bluetooth, авиарежима, GPS

8.6.1.6. Потеря связи с сервером или прокси (подключение есть, но пакеты не доходят)

8.6.1.6.1. Для проверки слабого или отсутствующего Wi-Fi и 3G-сигнала подойдут коробочки из фольги

8.6.1.7. Отключение и подключение SD-карты, дополнительных устройств вроде физической клавиатуры или гарнитуры

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

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

8.6.1.9. Работа с акселерометром

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

8.6.1.11. переход из режима 3G на wifi и обратно

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

8.6.2. Обработка ситуаций нехватки памяти для функционирования ОС, когда приложение активно или работает в фоне

8.6.3. Отсутствие в некоторых устройствах поддерживаемых приложением функций (3G, SD-карта и т. п.)

8.6.4. monkey testing (fuzzy testing)

8.6.4.1. приложение должно корректно реагировать на возникновение случайных и непредсказуемых событий. Мобильные устройства чаще других попадают в условия, в которых получают хаотичную бесполезную информацию (например, незаблокированный девайс в кармане), потому приложение должно адекватно реагировать на подобные потоки данных

8.6.4.2. monkey http://developer.android.com/tools/help/monkey.html android

8.6.4.2.1. Тестировать можно как на эмуляторе, так и на подключенном устройстве

8.6.4.3. Anteater https://www.redant.com/anteater ios

8.6.4.4. Следует проверять многократное быстрое нажатие на кнопку – часто при этом может случиться падение приложения. Так же следует проверять мультитач – нажатие на несколько кнопок одновременно

8.7. Аттестационное тестирование

8.7.1. используется для подтверждения соответствия приложения стандартам, лицензионным соглашениям и условиям использования

8.7.1.1. андроид

8.7.1.1.1. версионирование при публикации новой сборки

8.7.1.1.2. Приложение не должно противоречить документу UID (UI Design) guidelines http://developer.android.com/guide/practices/ui_guidelines/index.html

8.7.1.2. iOS and Android Design Guidelines Cheat Sheet http://www.kinvey.com/blog/2765/ios-and-android-design-guidelines-cheat-sheet

8.7.1.3. ios

8.7.1.3.1. Приложение не должно противоречить документу Human Interface Guidelines

8.7.1.4. windows phone

8.7.1.4.1. должно соответствовать всем категориям app certification requirements

8.8. Инсталляционное тест.

8.8.1. Установка или перенос приложения на карту SD

8.8.2. способы установки - wifi - 3G - usb - sd - bluetooth?

8.8.3. Приложение не должно устанавливаться на неподдерживаемые устройства

8.8.4. деинсталляция приложения

8.8.4.1. очистка данных

8.8.4.2. что остается и это считается нормальным?

8.8.5. установка тестового приложения

8.8.5.1. ios

8.8.5.1.1. testflight http://testflightapp.com/

8.8.5.2. андроид

8.8.5.2.1. вручную переносом .apk на sdcard

8.8.5.2.2. airdroid http://www.airdroid.com/, droid explorer и проч.

8.8.5.2.3. через консоль ADB (android debug bridge)

8.9. тестирование обновлений

8.9.1. Тестирование обновлений - сохранность данных пользователей (миграции данных)

8.9.1.1. обновления операционной системы

8.9.1.1.1. Убедиться, что поддерживаются те же версии ОС, что и предыдущая версия

8.9.1.1.2. Различные версии ОС могут использовать отличные соглашения и правила (интерпретация жестов, правила навигации)

8.9.1.2. обновление самого приложения

8.9.1.3. Платный контент внутри приложения - восстановление имеющихся покупок