SlideShare a Scribd company logo
Особенности тестирования iOS приложений
2 Ручное тестирование 1 Автоматическое тестирование 2 Сравнение инструментов 3
iOS 4.X устройства
iOS Human Interface Guidelines iOS Human Interface Guidelines описывает основы разработки дизайна приложения. Несколько основных направлений описанных в iOS HIG: ,[object Object]
«Опыт пользователей»
Стандартные UI элементы
Стандарты используемые при создании картинок, иконок.,[object Object]
iOS Human Interface Guidelines iOS устройства и встроенные приложения интуитивно понятны и просты в использовании, поэтому пользователи не нуждаются во всплывающих меню-помощниках.  Все настройки приложений хранятся в приложении «Settings». Действие – Результат Немедленный результат – то чего ожидают пользователи. При продолжительных действиях появление статус-индикатора обязательно.
Создание багов Как разработчики так и инженеры по тестированию не знают как называются элементы интерфейса приложения.
Возможности iOS 4.*
Клавиатура iPhone поддерживает более 34 языков интерфейса между которыми можно легко переключаться. Так как клавиатура является программой, то можно выбрать любую из 40 различных раскладок поддерживающие функции для каждого языка: диакритические символы, рукописный ввод для китайского языка и контекстуальные варианты ввода для японского.
Клавиатура Продолжительное нажатие на клавишу клавиатуры открывает дополнительные символы. В Японской раскладке есть специальная клавиша для вставки смайликов (Japanese Emoji)
Внешняя клавиатура iOS устройства, начиная с iPad и iPad 2, iPhone 3GS и4G, iPod touch 3rdg и выше поддерживают внешнюю Bluetooth-клавиатуру.
Внешний дисплей Так же как и с клавиатурой, подключение внешнего монитора, телевизора, проектора доступно не во всех iOS устройствах: начиная с iPad и iPad 2, iPhone 4, илиiPod touch 4g.
Универсальный доступ Apple очень заботится о людях с ограниченными физическими возможностями, поэтому проверить совместимость разрабатываемого приложения с универсальным доступом – обязанность каждого инженера по тестированию.  Универсальный доступ включает в себя: масштабирование, голосовое сопровождение интерфейса (VoiceOver), поддержка беспроводных дисплеев и таблиц Брайля, а также «белое на черном» для увеличения контрастности отображаемой картинки.
Важно! Скриншоты в iOS устройствах снимаются при помощи одновременного нажатия на кнопки блокировки и Home.
Что тестировать?! При нажатии в редактируемом поле, появляется клавиатура, кроме того это поле располагается чуть чуть левее от центра видимой (не закрытой клавиатурой) области экрана.
Что тестировать?! Если в приложении используется «самописная» клавиатура, ее необходимо проверять особо тщательно. На рисунках, два таких примера: 1. Открытие клавиатуры; 2. Дезориентация устройства в следствии «неожиданного» появления системного вызова.
Что тестировать?! Акселерометр. Как правило является самой большой занозой для разработчиков т.к. шаги по воспроизведению зачастую неизвестны. Но не стоит ограничиваться только тестированием акселерометра, лучше всего совместить это с блокировкой устройства, pop-up меню, многозадачностью.
Что тестировать?! Инерционная полоса прокрутки (inertial scroll).Наличие важно, при увеличении картинки помогает пользователю ориентироваться в какую часть картинки он просматривает.
Что тестировать?! Алертымогут менять положение Кроме того они могут завалить приложение если нажать кнопку Home во время его появления. Некоторые меню также могут «двигаться»
20 Ручное тестирование 1 Автоматическое тестирование 2 Сравнение инструментов 3
UI Automation UI Automation позволяет писать небольшие скрипты для тестирования элементов интерфейса приложения как на симуляторе так и на обычном устройстве. Тесты пишутся на скриптовом языке JavaScript и позволяют манипулировать элементами интерфейса с помощью UI Automation API, возвращает лог отработки на хостовую машину.
UISpec UISpec – это фреймворк предоставляющий полное автоматическое тестирование приложения как на симуляторе так и на устройстве (так пишут о нем разработчики). Код теста встраивается в основной код приложения и пишется на Objective-C. В настоящий момент разработка данного фреймворка прекращена, что не удивительно для опенсорс.
FoneMonkey FoneMonkey – это не просто инструмент, это фреймворк позволяющий как записывать так и воспроизводить тесты.  Кроме того может воспроизводить уже готовые скрипты написанные на Objective-C либо JavaScript. Проект активно развивается, распространяется под лицензией GNU. FoneMonkey на ряду с UISpec также встраивается в исходный код приложения и не подходит для «чистого» тестирования.
24 Ручное тестирование 1 Автоматическое тестирование 2 Сравнение инструментов 3

More Related Content

What's hot

Автоматизация тестирования iOS и Android приложений
Автоматизация тестирования iOS и Android приложенийАвтоматизация тестирования iOS и Android приложений
Автоматизация тестирования iOS и Android приложений
Andrei Pugachev
 
Антон Семенченко, Никита Беликов "Инструменты автоматизации тестирования моби...
Антон Семенченко, Никита Беликов "Инструменты автоматизации тестирования моби...Антон Семенченко, Никита Беликов "Инструменты автоматизации тестирования моби...
Антон Семенченко, Никита Беликов "Инструменты автоматизации тестирования моби...
QA Club Minsk
 
Лайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилкахЛайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилках
SQALab
 
разработчик пользовательских интерфейсов
разработчик пользовательских интерфейсовразработчик пользовательских интерфейсов
разработчик пользовательских интерфейсов
Ольга Михеева
 
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
QA Club Minsk
 
Mobile testing: Android, iOS, BlackBerry
Mobile testing: Android, iOS, BlackBerryMobile testing: Android, iOS, BlackBerry
Mobile testing: Android, iOS, BlackBerryQA Club Kiev
 

What's hot (6)

Автоматизация тестирования iOS и Android приложений
Автоматизация тестирования iOS и Android приложенийАвтоматизация тестирования iOS и Android приложений
Автоматизация тестирования iOS и Android приложений
 
Антон Семенченко, Никита Беликов "Инструменты автоматизации тестирования моби...
Антон Семенченко, Никита Беликов "Инструменты автоматизации тестирования моби...Антон Семенченко, Никита Беликов "Инструменты автоматизации тестирования моби...
Антон Семенченко, Никита Беликов "Инструменты автоматизации тестирования моби...
 
Лайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилкахЛайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилках
 
разработчик пользовательских интерфейсов
разработчик пользовательских интерфейсовразработчик пользовательских интерфейсов
разработчик пользовательских интерфейсов
 
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
 
Mobile testing: Android, iOS, BlackBerry
Mobile testing: Android, iOS, BlackBerryMobile testing: Android, iOS, BlackBerry
Mobile testing: Android, iOS, BlackBerry
 

Similar to iOS_Testing.pptx

тестирование снецифических областей
тестирование снецифических областейтестирование снецифических областей
тестирование снецифических областей
DressTester
 
Тестирование web-приложений на iPad
Тестирование web-приложений на iPadТестирование web-приложений на iPad
Тестирование web-приложений на iPad
Softengi
 
Никита Мещаненко, Антон Семенченко - Альтернативные пути преподавания основ п...
Никита Мещаненко, Антон Семенченко - Альтернативные пути преподавания основ п...Никита Мещаненко, Антон Семенченко - Альтернативные пути преподавания основ п...
Никита Мещаненко, Антон Семенченко - Альтернативные пути преподавания основ п...
COMAQA.BY
 
Выход новой iOS и Apple-устройства: что может тестировщик, кроме тестирования.
Выход новой iOS и Apple-устройства: что может тестировщик, кроме тестирования.Выход новой iOS и Apple-устройства: что может тестировщик, кроме тестирования.
Выход новой iOS и Apple-устройства: что может тестировщик, кроме тестирования.
Victoria Kozlova
 
Виктория Козлова "Выход новой iOS и Apple-устройства: что может тестировщик, ...
Виктория Козлова "Выход новой iOS и Apple-устройства: что может тестировщик, ...Виктория Козлова "Выход новой iOS и Apple-устройства: что может тестировщик, ...
Виктория Козлова "Выход новой iOS и Apple-устройства: что может тестировщик, ...QA Club Minsk
 
2012-01-05 02 Юлия Миттова. Автоматизированное тестирование под Android
2012-01-05 02 Юлия Миттова. Автоматизированное тестирование под Android2012-01-05 02 Юлия Миттова. Автоматизированное тестирование под Android
2012-01-05 02 Юлия Миттова. Автоматизированное тестирование под AndroidОмские ИТ-субботники
 
Introduction to Mobile applications testing
Introduction to Mobile applications testingIntroduction to Mobile applications testing
Introduction to Mobile applications testing
Oleg Nikiforov
 
Тестирование под iOS
Тестирование под iOSТестирование под iOS
Тестирование под iOSDmitry Lubnevsky
 
Роман Петров - юнит-тестирование мобильных приложений на примере платформы iOS
Роман Петров - юнит-тестирование мобильных приложений на примере платформы iOSРоман Петров - юнит-тестирование мобильных приложений на примере платформы iOS
Роман Петров - юнит-тестирование мобильных приложений на примере платформы iOS
Provectus
 
Android unit and ui testing
Android unit and ui testingAndroid unit and ui testing
Android unit and ui testing
Bogdan Aksonenko
 
Mobile automation with Appium
Mobile automation with AppiumMobile automation with Appium
Mobile automation with Appium
OksanaBisyuk
 
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
 
Валентин Симонов ( Interactive Lab) - “Выбросьте свои клавиатуру и мышь! Разр...
Валентин Симонов ( Interactive Lab) - “Выбросьте свои клавиатуру и мышь! Разр...Валентин Симонов ( Interactive Lab) - “Выбросьте свои клавиатуру и мышь! Разр...
Валентин Симонов ( Interactive Lab) - “Выбросьте свои клавиатуру и мышь! Разр...
DevGAMM Conference
 
Evelina Tananaeva
 Evelina Tananaeva Evelina Tananaeva
Evelina TananaevaAlexei Lupan
 
Debug with Visual Studio
Debug with Visual StudioDebug with Visual Studio
Debug with Visual Studio
Ihor Porotikov
 
Александр Бабаев — Работа с ускорением app code.
Александр Бабаев — Работа с ускорением app code. Александр Бабаев — Работа с ускорением app code.
Александр Бабаев — Работа с ускорением app code. Yandex
 
Эвелина Тананаева -- Мобильные технологии: тестирование - с чего начать?
Эвелина Тананаева -- Мобильные технологии: тестирование - с чего начать?Эвелина Тананаева -- Мобильные технологии: тестирование - с чего начать?
Эвелина Тананаева -- Мобильные технологии: тестирование - с чего начать?sqadays8
 
Обзор Технологий iOS
Обзор Технологий iOSОбзор Технологий iOS
Обзор Технологий iOS
k-svirsky
 
Nordic AB at British Higher School of Art and Design: iOs Development Masterc...
Nordic AB at British Higher School of Art and Design: iOs Development Masterc...Nordic AB at British Higher School of Art and Design: iOs Development Masterc...
Nordic AB at British Higher School of Art and Design: iOs Development Masterc...
Nordic Agency AB
 

Similar to iOS_Testing.pptx (20)

тестирование снецифических областей
тестирование снецифических областейтестирование снецифических областей
тестирование снецифических областей
 
Тестирование web-приложений на iPad
Тестирование web-приложений на iPadТестирование web-приложений на iPad
Тестирование web-приложений на iPad
 
Никита Мещаненко, Антон Семенченко - Альтернативные пути преподавания основ п...
Никита Мещаненко, Антон Семенченко - Альтернативные пути преподавания основ п...Никита Мещаненко, Антон Семенченко - Альтернативные пути преподавания основ п...
Никита Мещаненко, Антон Семенченко - Альтернативные пути преподавания основ п...
 
Выход новой iOS и Apple-устройства: что может тестировщик, кроме тестирования.
Выход новой iOS и Apple-устройства: что может тестировщик, кроме тестирования.Выход новой iOS и Apple-устройства: что может тестировщик, кроме тестирования.
Выход новой iOS и Apple-устройства: что может тестировщик, кроме тестирования.
 
Виктория Козлова "Выход новой iOS и Apple-устройства: что может тестировщик, ...
Виктория Козлова "Выход новой iOS и Apple-устройства: что может тестировщик, ...Виктория Козлова "Выход новой iOS и Apple-устройства: что может тестировщик, ...
Виктория Козлова "Выход новой iOS и Apple-устройства: что может тестировщик, ...
 
2012-01-05 02 Юлия Миттова. Автоматизированное тестирование под Android
2012-01-05 02 Юлия Миттова. Автоматизированное тестирование под Android2012-01-05 02 Юлия Миттова. Автоматизированное тестирование под Android
2012-01-05 02 Юлия Миттова. Автоматизированное тестирование под Android
 
Introduction to Mobile applications testing
Introduction to Mobile applications testingIntroduction to Mobile applications testing
Introduction to Mobile applications testing
 
Тестирование под iOS
Тестирование под iOSТестирование под iOS
Тестирование под iOS
 
Роман Петров - юнит-тестирование мобильных приложений на примере платформы iOS
Роман Петров - юнит-тестирование мобильных приложений на примере платформы iOSРоман Петров - юнит-тестирование мобильных приложений на примере платформы iOS
Роман Петров - юнит-тестирование мобильных приложений на примере платформы iOS
 
Android unit and ui testing
Android unit and ui testingAndroid unit and ui testing
Android unit and ui testing
 
Mobile automation with Appium
Mobile automation with AppiumMobile automation with Appium
Mobile automation with Appium
 
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
 
Mobile development
Mobile developmentMobile development
Mobile development
 
Валентин Симонов ( Interactive Lab) - “Выбросьте свои клавиатуру и мышь! Разр...
Валентин Симонов ( Interactive Lab) - “Выбросьте свои клавиатуру и мышь! Разр...Валентин Симонов ( Interactive Lab) - “Выбросьте свои клавиатуру и мышь! Разр...
Валентин Симонов ( Interactive Lab) - “Выбросьте свои клавиатуру и мышь! Разр...
 
Evelina Tananaeva
 Evelina Tananaeva Evelina Tananaeva
Evelina Tananaeva
 
Debug with Visual Studio
Debug with Visual StudioDebug with Visual Studio
Debug with Visual Studio
 
Александр Бабаев — Работа с ускорением app code.
Александр Бабаев — Работа с ускорением app code. Александр Бабаев — Работа с ускорением app code.
Александр Бабаев — Работа с ускорением app code.
 
Эвелина Тананаева -- Мобильные технологии: тестирование - с чего начать?
Эвелина Тананаева -- Мобильные технологии: тестирование - с чего начать?Эвелина Тананаева -- Мобильные технологии: тестирование - с чего начать?
Эвелина Тананаева -- Мобильные технологии: тестирование - с чего начать?
 
Обзор Технологий iOS
Обзор Технологий iOSОбзор Технологий iOS
Обзор Технологий iOS
 
Nordic AB at British Higher School of Art and Design: iOs Development Masterc...
Nordic AB at British Higher School of Art and Design: iOs Development Masterc...Nordic AB at British Higher School of Art and Design: iOs Development Masterc...
Nordic AB at British Higher School of Art and Design: iOs Development Masterc...
 

More from Транслируем.бел

Медицинские трансляции
Медицинские трансляцииМедицинские трансляции
Медицинские трансляции
Транслируем.бел
 
Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)
Транслируем.бел
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайн
Транслируем.бел
 
Unofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeksUnofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeks
Транслируем.бел
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решений
Транслируем.бел
 
Sennheiser ew100 g2
Sennheiser ew100 g2Sennheiser ew100 g2
Sennheiser ew100 g2
Транслируем.бел
 
Сравнение поколений Y и Z
Сравнение поколений Y и ZСравнение поколений Y и Z
Сравнение поколений Y и Z
Транслируем.бел
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетях
Транслируем.бел
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в Facebook
Транслируем.бел
 
The ultimate guide to facebook live for your event
The ultimate guide to facebook live for your eventThe ultimate guide to facebook live for your event
The ultimate guide to facebook live for your event
Транслируем.бел
 
Guide to facebook live
Guide to facebook liveGuide to facebook live
Guide to facebook live
Транслируем.бел
 
Comdi player
Comdi playerComdi player
Что сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьЧто сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделывать
Транслируем.бел
 
Когда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоКогда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений Кравченко
Транслируем.бел
 
Marketing Essentials for Startup Teams
Marketing Essentials for Startup TeamsMarketing Essentials for Startup Teams
Marketing Essentials for Startup Teams
Транслируем.бел
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
Транслируем.бел
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектов
Транслируем.бел
 
Belarus internet users discovery
Belarus internet users discoveryBelarus internet users discovery
Belarus internet users discovery
Транслируем.бел
 

More from Транслируем.бел (20)

Медицинские трансляции
Медицинские трансляцииМедицинские трансляции
Медицинские трансляции
 
Vinteo
VinteoVinteo
Vinteo
 
Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайн
 
Unofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeksUnofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeks
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решений
 
Sennheiser ew100 g2
Sennheiser ew100 g2Sennheiser ew100 g2
Sennheiser ew100 g2
 
Sony mcs 8m
Sony mcs 8mSony mcs 8m
Sony mcs 8m
 
Сравнение поколений Y и Z
Сравнение поколений Y и ZСравнение поколений Y и Z
Сравнение поколений Y и Z
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетях
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в Facebook
 
The ultimate guide to facebook live for your event
The ultimate guide to facebook live for your eventThe ultimate guide to facebook live for your event
The ultimate guide to facebook live for your event
 
Guide to facebook live
Guide to facebook liveGuide to facebook live
Guide to facebook live
 
Comdi player
Comdi playerComdi player
Comdi player
 
Что сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьЧто сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделывать
 
Когда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоКогда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений Кравченко
 
Marketing Essentials for Startup Teams
Marketing Essentials for Startup TeamsMarketing Essentials for Startup Teams
Marketing Essentials for Startup Teams
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектов
 
Belarus internet users discovery
Belarus internet users discoveryBelarus internet users discovery
Belarus internet users discovery
 

iOS_Testing.pptx

  • 2. 2 Ручное тестирование 1 Автоматическое тестирование 2 Сравнение инструментов 3
  • 4.
  • 7.
  • 8. iOS Human Interface Guidelines iOS устройства и встроенные приложения интуитивно понятны и просты в использовании, поэтому пользователи не нуждаются во всплывающих меню-помощниках. Все настройки приложений хранятся в приложении «Settings». Действие – Результат Немедленный результат – то чего ожидают пользователи. При продолжительных действиях появление статус-индикатора обязательно.
  • 9. Создание багов Как разработчики так и инженеры по тестированию не знают как называются элементы интерфейса приложения.
  • 11. Клавиатура iPhone поддерживает более 34 языков интерфейса между которыми можно легко переключаться. Так как клавиатура является программой, то можно выбрать любую из 40 различных раскладок поддерживающие функции для каждого языка: диакритические символы, рукописный ввод для китайского языка и контекстуальные варианты ввода для японского.
  • 12. Клавиатура Продолжительное нажатие на клавишу клавиатуры открывает дополнительные символы. В Японской раскладке есть специальная клавиша для вставки смайликов (Japanese Emoji)
  • 13. Внешняя клавиатура iOS устройства, начиная с iPad и iPad 2, iPhone 3GS и4G, iPod touch 3rdg и выше поддерживают внешнюю Bluetooth-клавиатуру.
  • 14. Внешний дисплей Так же как и с клавиатурой, подключение внешнего монитора, телевизора, проектора доступно не во всех iOS устройствах: начиная с iPad и iPad 2, iPhone 4, илиiPod touch 4g.
  • 15. Универсальный доступ Apple очень заботится о людях с ограниченными физическими возможностями, поэтому проверить совместимость разрабатываемого приложения с универсальным доступом – обязанность каждого инженера по тестированию. Универсальный доступ включает в себя: масштабирование, голосовое сопровождение интерфейса (VoiceOver), поддержка беспроводных дисплеев и таблиц Брайля, а также «белое на черном» для увеличения контрастности отображаемой картинки.
  • 16. Важно! Скриншоты в iOS устройствах снимаются при помощи одновременного нажатия на кнопки блокировки и Home.
  • 17. Что тестировать?! При нажатии в редактируемом поле, появляется клавиатура, кроме того это поле располагается чуть чуть левее от центра видимой (не закрытой клавиатурой) области экрана.
  • 18. Что тестировать?! Если в приложении используется «самописная» клавиатура, ее необходимо проверять особо тщательно. На рисунках, два таких примера: 1. Открытие клавиатуры; 2. Дезориентация устройства в следствии «неожиданного» появления системного вызова.
  • 19. Что тестировать?! Акселерометр. Как правило является самой большой занозой для разработчиков т.к. шаги по воспроизведению зачастую неизвестны. Но не стоит ограничиваться только тестированием акселерометра, лучше всего совместить это с блокировкой устройства, pop-up меню, многозадачностью.
  • 20. Что тестировать?! Инерционная полоса прокрутки (inertial scroll).Наличие важно, при увеличении картинки помогает пользователю ориентироваться в какую часть картинки он просматривает.
  • 21. Что тестировать?! Алертымогут менять положение Кроме того они могут завалить приложение если нажать кнопку Home во время его появления. Некоторые меню также могут «двигаться»
  • 22. 20 Ручное тестирование 1 Автоматическое тестирование 2 Сравнение инструментов 3
  • 23. UI Automation UI Automation позволяет писать небольшие скрипты для тестирования элементов интерфейса приложения как на симуляторе так и на обычном устройстве. Тесты пишутся на скриптовом языке JavaScript и позволяют манипулировать элементами интерфейса с помощью UI Automation API, возвращает лог отработки на хостовую машину.
  • 24. UISpec UISpec – это фреймворк предоставляющий полное автоматическое тестирование приложения как на симуляторе так и на устройстве (так пишут о нем разработчики). Код теста встраивается в основной код приложения и пишется на Objective-C. В настоящий момент разработка данного фреймворка прекращена, что не удивительно для опенсорс.
  • 25. FoneMonkey FoneMonkey – это не просто инструмент, это фреймворк позволяющий как записывать так и воспроизводить тесты. Кроме того может воспроизводить уже готовые скрипты написанные на Objective-C либо JavaScript. Проект активно развивается, распространяется под лицензией GNU. FoneMonkey на ряду с UISpec также встраивается в исходный код приложения и не подходит для «чистого» тестирования.
  • 26. 24 Ручное тестирование 1 Автоматическое тестирование 2 Сравнение инструментов 3
  • 28. Ссылки More information about -UI Automation: http://developer.apple.com/library/ios/#documentation/DeveloperTools/Reference/UIAutomationRef/Introduction/Introduction.html -UISpec: http://code.google.com/p/uispec/wiki/Documentation -FoneMonkey: http://www.gorillalogic.com/fonemonkey