Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Подходы к тестированию андроидприложенийЮлия Шевченко.
Cтатистика250              сотрудников            Чарт сотрудников                                        по отделамПроект...
Cтатистика250              сотрудников            Чарт сотрудников                                        по отделамПроект...
Cтатистика250              сотрудников            Чарт сотрудников                                        по отделамПроект...
ПК против смартфоновПо статистике IDC было продано в 4м квартале 2011 года: 100,9 млн смартфонов 92,1 млн ПК
ПК против смартфонов
ПК против смартфонов
Мобильные платформы
Мобильные платформы
Мобильные платформы
Мобильные платформы
Мобильные платформы
Причины разработки приложений
Причины разработки приложений Развлечения
Причины разработки приложений Развлечения Предоставление доступа к информации
Причины разработки приложений Развлечения Предоставление доступа к информации Маркетинг
Причины разработки приложений Развлечения Предоставление доступа к информации Маркетинг Канал продаж
Причины разработки приложений Развлечения Предоставление доступа к информации Маркетинг Канал продаж Продажа приложений
Результаты команды тестирования
Результаты команды тестирования Разработка стратегии тестирования
Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы)
Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы...
Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы...
Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы...
Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы...
Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы...
Специфики тестированиямобильных приложений
Специфики тестирования мобильных приложенийМетоды ввода устройства и форм-факторы: приложение подходит  для всех, помним о...
Специфики тестирования мобильных приложенийМетоды ввода устройства и форм-факторы: приложение подходит  для всех, помним о...
Специфики тестирования мобильных приложенийМетоды ввода устройства и форм-факторы: приложение подходит  для всех, помним о...
Специфики тестирования мобильных приложенийЛимитирование сети: различные операторы мобильной связи, типы  сети (Wi-Fi, EDG...
Специфики тестирования мобильных приложенийЛимитирование сети: различные операторы мобильной связи, типы  сети (Wi-Fi, EDG...
Специфики тестирования мобильных приложенийЛимитирование сети: различные операторы мобильной связи, типы  сети (Wi-Fi, EDG...
Специфики тестирования мобильных приложенийЭнергопотребление устройства: энергопотребление и  чувствительность к зарядке
Специфики тестирования мобильных приложенийЭнергопотребление устройства: энергопотребление и  чувствительность к зарядкеАк...
Специфики тестирования мобильных приложенийЭнергопотребление устройства: энергопотребление и  чувствительность к зарядкеАк...
и еще..Рабочая устойчивость при входящих / исходящих звонках или  получении / отправке SMS / MMS; установка и восстановлен...
и еще..Рабочая устойчивость при входящих / исходящих звонках или  получении / отправке SMS / MMS; установка и восстановлен...
и еще..Рабочая устойчивость при входящих / исходящих звонках или  получении / отправке SMS / MMS; установка и восстановлен...
и еще..Рабочая устойчивость при входящих / исходящих звонках или  получении / отправке SMS / MMS; установка и восстановлен...
Разрешения экрана у AndroidВсе экраны Android устройств делятся на: 4 различных размеров (маленький, нормальный, большой ...
Методологии тестирования Android       приложений• Методика тестирования во многом зависит от типа приложения• Есть 3 осно...
Критерии тестирования AndroidУстановка и запуск:          Использование памяти / дискового                             про...
Критерии тестирования AndroidПодключения:• Обработка недействительной/нестабильной мобильной связи    1) Неверные детали ...
Критерии тестирования Androidдобство пользования:• Читаемость и время чтения• Правильное перекрашивание экрана• Последоват...
Критерии тестирования AndroidЛокализация:                 Меню:•   Приложение работает с    •   Стандартные пункты меню   ...
Критерии тестирования AndroidФункциональность:               Производительность:• Функциональное тестирование  на “здравый...
Критерии тестирования AndroidСтабильность приложения:      Безопасность приложения:•   Проверка зависания или    •   Шифро...
Тестирование потребления батареиУчитывая, что батареи мобильных телефонов ограничены, естьсредства мониторинга, которые мо...
Тренды мобильной автоматизации•   Количество мобильных ОС создают однородность, что    позволяет ”создать тест один раз, ч...
Как выбрать правильный фреймворк: Испачкайте руки и попробуйте Хорошее изучение ресурсов Поддержка хорошего сообщества Име...
Robotium          http://code.google.com/p/robotium/“It’s like Selenium, but for Android”Полная поддержка для Activities, ...
Robotium          http://code.google.com/p/robotium/“It’s like Selenium, but for Android”Полная поддержка для Activities, ...
SeeTest         http://experitest.com/Поддержка iOS, Android, Blackberry, WindowsMobile, WP7, SymbianПозволяет покрыть соб...
SeeTest         http://experitest.com/Поддержка iOS, Android, Blackberry, WindowsMobile, WP7, SymbianПозволяет покрыть соб...
TestDroid           http://testdroid.com/Запись действий из устройстваНе обязательно иметь доступ к кодуРабота со скриншот...
TestDroid           http://testdroid.com/Запись действий из устройстваНе обязательно иметь доступ к кодуРабота со скриншот...
Разнообразие инструментовM-eux Test                  MonkeyRunner   MobileCloud
В заключении..
В заключении..Испачкайте руки и попробуйте
Спасибо!• jshevchenko@cogniance.com• skype: julia.shevchenko• http://www.linkedin.com/in/juliashevchenko
Upcoming SlideShare
Loading in …5
×

Подходы к тестированию андроид приложений

8,261 views

Published on

SQA Days 11. День 2. Cекция B
Юлия Шевченко
Cogniance
Киев, Украина

Published in: Education
  • Be the first to comment

Подходы к тестированию андроид приложений

  1. 1. Подходы к тестированию андроидприложенийЮлия Шевченко.
  2. 2. Cтатистика250 сотрудников Чарт сотрудников по отделамПроекты Мобильныезавершенные платформы147 26% Android: 38 20% 50% iPhone: 30 Мобильные: 74 4% 50% BlackBerry, Веб: 73 Brew, Symbian: 6
  3. 3. Cтатистика250 сотрудников Чарт сотрудников по отделамПроекты Мобильныезавершенные платформы147 26% Android: 38 20% 50% iPhone: 30 Мобильные: 74 4% 50% BlackBerry, Веб: 73 Brew, Symbian: 6
  4. 4. Cтатистика250 сотрудников Чарт сотрудников по отделамПроекты Мобильныезавершенные платформы147 26% Android: 38 20% 50% iPhone: 30 Мобильные: 74 4% 50% BlackBerry, Веб: 73 Brew, Symbian: 6
  5. 5. ПК против смартфоновПо статистике IDC было продано в 4м квартале 2011 года: 100,9 млн смартфонов 92,1 млн ПК
  6. 6. ПК против смартфонов
  7. 7. ПК против смартфонов
  8. 8. Мобильные платформы
  9. 9. Мобильные платформы
  10. 10. Мобильные платформы
  11. 11. Мобильные платформы
  12. 12. Мобильные платформы
  13. 13. Причины разработки приложений
  14. 14. Причины разработки приложений Развлечения
  15. 15. Причины разработки приложений Развлечения Предоставление доступа к информации
  16. 16. Причины разработки приложений Развлечения Предоставление доступа к информации Маркетинг
  17. 17. Причины разработки приложений Развлечения Предоставление доступа к информации Маркетинг Канал продаж
  18. 18. Причины разработки приложений Развлечения Предоставление доступа к информации Маркетинг Канал продаж Продажа приложений
  19. 19. Результаты команды тестирования
  20. 20. Результаты команды тестирования Разработка стратегии тестирования
  21. 21. Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы)
  22. 22. Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы) Разработка архитектуры систем автоматизации тестирования
  23. 23. Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы) Разработка архитектуры систем автоматизации тестирования Исполнение тестов
  24. 24. Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы) Разработка архитектуры систем автоматизации тестирования Исполнение тестов Сообщение об ошибках и проверки исправления ошибок
  25. 25. Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы) Разработка архитектуры систем автоматизации тестирования Исполнение тестов Сообщение об ошибках и проверки исправления ошибок Поддержка тест кейсов
  26. 26. Результаты команды тестирования Разработка стратегии тестирования Создание тестовой документации (тест планы, тест кейсы) Разработка архитектуры систем автоматизации тестирования Исполнение тестов Сообщение об ошибках и проверки исправления ошибок Поддержка тест кейсов Своевременная доставка качественного продукта
  27. 27. Специфики тестированиямобильных приложений
  28. 28. Специфики тестирования мобильных приложенийМетоды ввода устройства и форм-факторы: приложение подходит для всех, помним о цифровой клавиатуре, QWERTY клавиатуре, трекболе, сенсорном экране и устройстве боковой панели
  29. 29. Специфики тестирования мобильных приложенийМетоды ввода устройства и форм-факторы: приложение подходит для всех, помним о цифровой клавиатуре, QWERTY клавиатуре, трекболе, сенсорном экране и устройстве боковой панелиРазмер экрана и разрешение: для лучшего опыта взаимодействия приложения должно работать на всех устройствах (в пределах одной и той же платформы) с основными размерами экрана и разрешением (телефоны и планшеты)
  30. 30. Специфики тестирования мобильных приложенийМетоды ввода устройства и форм-факторы: приложение подходит для всех, помним о цифровой клавиатуре, QWERTY клавиатуре, трекболе, сенсорном экране и устройстве боковой панелиРазмер экрана и разрешение: для лучшего опыта взаимодействия приложения должно работать на всех устройствах (в пределах одной и той же платформы) с основными размерами экрана и разрешением (телефоны и планшеты)Производительность ОС и устройств: приложения должны быть протестированы на основных операционных системах и иметь обратную совместимость
  31. 31. Специфики тестирования мобильных приложенийЛимитирование сети: различные операторы мобильной связи, типы сети (Wi-Fi, EDGE, 3G, 4G, GSM/CDMA), нестабильные сети
  32. 32. Специфики тестирования мобильных приложенийЛимитирование сети: различные операторы мобильной связи, типы сети (Wi-Fi, EDGE, 3G, 4G, GSM/CDMA), нестабильные сетиТипы устройств: приложение должно работать на различных типах устройств, если оно работает с поддерживаемой версией ОС
  33. 33. Специфики тестирования мобильных приложенийЛимитирование сети: различные операторы мобильной связи, типы сети (Wi-Fi, EDGE, 3G, 4G, GSM/CDMA), нестабильные сетиТипы устройств: приложение должно работать на различных типах устройств, если оно работает с поддерживаемой версией ОСGPS: GPS функциональность
  34. 34. Специфики тестирования мобильных приложенийЭнергопотребление устройства: энергопотребление и чувствительность к зарядке
  35. 35. Специфики тестирования мобильных приложенийЭнергопотребление устройства: энергопотребление и чувствительность к зарядкеАкселерометр: поведение и реакция акселерометра (устройство вращения)
  36. 36. Специфики тестирования мобильных приложенийЭнергопотребление устройства: энергопотребление и чувствительность к зарядкеАкселерометр: поведение и реакция акселерометра (устройство вращения)Соответствие стандартов мобильной разработки приложений: каждое приложение должно соответствовать всем требованиям разработки для конкретной платформы (AppStore , Apple HIG , принципы дизайна Android и т.д.)
  37. 37. и еще..Рабочая устойчивость при входящих / исходящих звонках или получении / отправке SMS / MMS; установка и восстановление приложений в фоновом режиме; стабильность приложений в случае нехватки места на диске
  38. 38. и еще..Рабочая устойчивость при входящих / исходящих звонках или получении / отправке SMS / MMS; установка и восстановление приложений в фоновом режиме; стабильность приложений в случае нехватки места на дискеРабота с картами памяти
  39. 39. и еще..Рабочая устойчивость при входящих / исходящих звонках или получении / отправке SMS / MMS; установка и восстановление приложений в фоновом режиме; стабильность приложений в случае нехватки места на дискеРабота с картами памятиСтабильность работы в стрессовых ситуациях после сбоев приложения
  40. 40. и еще..Рабочая устойчивость при входящих / исходящих звонках или получении / отправке SMS / MMS; установка и восстановление приложений в фоновом режиме; стабильность приложений в случае нехватки места на дискеРабота с картами памятиСтабильность работы в стрессовых ситуациях после сбоев приложенияСинхронизация с адресной книгой, календарем и приложениями на ПК
  41. 41. Разрешения экрана у AndroidВсе экраны Android устройств делятся на: 4 различных размеров (маленький, нормальный, большой и сверхбольшой) 4 различных разрешения (ldpi (low), mdpi (medium), hdpi (high), xhdpi (extra high))Примечания: Приложение должно быть проверено на нескольких экранах Каждый размер экрана требует своей графики
  42. 42. Методологии тестирования Android приложений• Методика тестирования во многом зависит от типа приложения• Есть 3 основных типа мобильных приложений:  1) Отдельное приложение принимая во внимание ограничения телефона, для такого приложения должны быть проведены фунциональное и нагрузочное тестирование. И стоит проверить удобство пользования.  2) Распределенные приложения требуют тестирования клиента и сервера (например, приложения мгновенного обмена сообщениями)  3) Веб-приложение требует проведения тестов функциональности , совместимости, контента, нагрузки, безопасности на стороне сервера и базы данных
  43. 43. Критерии тестирования AndroidУстановка и запуск: Использование памяти / дискового пространства:•Время установки и иконкаприложения на главном экране •Проверка предупреждения отсутствия памяти•Время запуска и уведомления •Физические ограничения памяти •Переход приложения на SD Card •Обработка ANR (Application Not Responding) ситуаций во время работы приложения
  44. 44. Критерии тестирования AndroidПодключения:• Обработка недействительной/нестабильной мобильной связи  1) Неверные детали точки доступа Access Point Name (APN)  2) Работающее соединение Wi-Fi без доступа в Интернет  3) Действующая сеть мобильной связи с пустым балансом • Отправка / получение данных  1) Подключение через действующую веб сессию  2) Отправка / получение данных через сеть HTTP-сессии•Задержки сети, потеря и возобновление связи•Работа в режиме полета и выключения доступа к данным
  45. 45. Критерии тестирования Androidдобство пользования:• Читаемость и время чтения• Правильное перекрашивание экрана• Последовательность• Правильные цвета экрана• Основные макеты простоты использования• Сообщения об ошибках• Визуальная индикация хода выполнения функций• Действие во время рендеринга/обработки• Множественные повороты экрана (портрет/альбом)• Различные размеры экрана• Орфографические ошибки
  46. 46. Критерии тестирования AndroidЛокализация: Меню:• Приложение работает с • Стандартные пункты меню определенными языками • Допустимые действия• Ручной выбор языка • Варианты медиа• Принятие международных • Настройка комбинаций символов• Различные метрические системы
  47. 47. Критерии тестирования AndroidФункциональность: Производительность:• Функциональное тестирование на “здравый смысл” • Приостановка / возобновление• Проверки прав доступа работы приложения приложения (никакой • Влияние системы на передачи незапланированных приложение (телефонный данных, нет повреждения звонок, музыка, вставка карты данных телефона и т.д.) памяти)• Основные проверки • Обмены ресурсами между (прокрутка, выбор, конкурирующими приложениями одновременное нажатие (контакты, Facebook, Twitter, клавиш, несколько нажатий Gmail, SMS Sharing) клавиш)• Проверка функций GPS• Сохранение данных на приостановке приложения• Сохранение данных на восстановлении приложения
  48. 48. Критерии тестирования AndroidСтабильность приложения: Безопасность приложения:• Проверка зависания или • Шифрование (отправка / неожиданного выхода получение конфиденциальных данных)• Поведение приложения • Пароли после принудительного • Повторное использование закрытия аутентификации данных • Данные в логах• Обработка данных (возможность сохранения состояния игры, высокий уровень очков, удаление данных, изменение записанных данных)
  49. 49. Тестирование потребления батареиУчитывая, что батареи мобильных телефонов ограничены, естьсредства мониторинга, которые могут быть использованы в целяхтестирования для проверки использования батареи:- Battery life Pro- Power Tutor- Battery Mix
  50. 50. Тренды мобильной автоматизации• Количество мобильных ОС создают однородность, что позволяет ”создать тест один раз, чтобы он работал на нескольких устройствах”• Частые обновления мобильной операционной системы вынуждают нас делать частые релизы версий приложения• Обычно приложения, разработанные для нескольких мобильных ОС, требуют инструмент автоматизации, который поддерживает все ОС
  51. 51. Как выбрать правильный фреймворк: Испачкайте руки и попробуйте Хорошее изучение ресурсов Поддержка хорошего сообщества Имеется ли достаточно фунциональности, которая вам необходима?
  52. 52. Robotium http://code.google.com/p/robotium/“It’s like Selenium, but for Android”Полная поддержка для Activities, Dialogs, Toasts, Menus and Context menus на эмуляторе и реальных устройствахНа основе JUnitПозволяет создать функциональные, системные и приемочные сценарии тестов, охватывающие нессколько Android активностейИнтегрируется с Maven и Ant для запуска тестов в рамках непрерывной интеграцииАвтоматизация с помощью командной строки
  53. 53. Robotium http://code.google.com/p/robotium/“It’s like Selenium, but for Android”Полная поддержка для Activities, Dialogs, Toasts, Menus and Context menus на эмуляторе и реальных устройствахНа основе JUnitПозволяет создать функциональные, системные и приемочные сценарии тестов, охватывающие нессколько Android активностейИнтегрируется с Maven и Ant для запуска тестов в рамках непрерывной интеграцииАвтоматизация с помощью командной строкиLite документацияНеподходящий для традиционных тестировщиковRobotium тесты могут работать только для активностейНе позволяет покрыть события сторонних приложений
  54. 54. SeeTest http://experitest.com/Поддержка iOS, Android, Blackberry, WindowsMobile, WP7, SymbianПозволяет покрыть события сторонних приложенийХорошая документацияЗапуск тестов из QTP, Junit, Perl, Python, MSTestОдин и тот же скрипт может быть легко перенесен из однойплатформы на другую
  55. 55. SeeTest http://experitest.com/Поддержка iOS, Android, Blackberry, WindowsMobile, WP7, SymbianПозволяет покрыть события сторонних приложенийХорошая документацияЗапуск тестов из QTP, Junit, Perl, Python, MSTestОдин и тот же скрипт может быть легко перенесен из однойплатформы на другуюЦена $2499 за платформу за годСредняя производительностьСильная UI зависимостьFor Windows only
  56. 56. TestDroid http://testdroid.com/Запись действий из устройстваНе обязательно иметь доступ к кодуРабота со скриншотамиПроизводит выход для MonkeyRunner и RobotiumВозможно тестирование на TesDroid Cloud, или создание своейсобственной инфраструктурыНаиболее перспективный инструмент
  57. 57. TestDroid http://testdroid.com/Запись действий из устройстваНе обязательно иметь доступ к кодуРабота со скриншотамиПроизводит выход для MonkeyRunner и RobotiumВозможно тестирование на TesDroid Cloud, или создание своейсобственной инфраструктурыНаиболее перспективный инструментЦена $600 за лицензию за годВ данный момент в бете, не генерирует тесты на MacИногда имеет неожиданное поведение (не записывает все действия)
  58. 58. Разнообразие инструментовM-eux Test MonkeyRunner MobileCloud
  59. 59. В заключении..
  60. 60. В заключении..Испачкайте руки и попробуйте
  61. 61. Спасибо!• jshevchenko@cogniance.com• skype: julia.shevchenko• http://www.linkedin.com/in/juliashevchenko

×