- PVSM.RU - https://www.pvsm.ru -
Рассмотрим шаги, которые необходимо проделать разработчику iOS-приложения и тестеру, чтобы наладить между собой канал разработки, тестирования и получения отчетов без использования специлизированных систем тестирования.
Тестеру необходимо, чтобы разрабатываемое Вами приложение было установлено на его устройстве. Как правило, делаете всю предварительную работу Вы сами: в лучшем случае Вы настроили автоматическую сборку c AdHoc-сертификатом, тестер в час X скачивает сборку и устанавливает ее на свое устройтво путем синхранизации через iTunes или с помощью Configuration Utility [1]. В худшем случае Вы сами отправляете сборку письмом или загружая на определенный ресурс.
Тестер должен тщательно проверить приложение, отложить устройство и завести пару багов в баг-треккере и, если приложение вылетело в процессе тестирования, приложит парочку crash-файлов. Тестер может быть не один, и тогда количество созданных задач в треккере возрастет, если тестеры никак с собой не взаимодействуют. А такое бывает.
Прочитав все, что создано после этого в баг-треккере, Вы приступаете к исправлению. И процесс повторяется до тех пор, пока вы все не исправите.
На первом этапе проблемы — это все что находится между вашим финальным коммитом в репозиторий до установки приложения на устройство тестера. Ручные скачивания тестерами сборок, синхранизация с айтюнсом, установки через Configuration Utility, — все это рутина, которую нужно убрать.
На шаге тестирования проблема следующая. Тестер тратит время на создание задачи в треккере, прикладыванию к ней краш-лога. Крашлоги могут быть из-за одной ошибки, что может привести к дублирования задачи в треккере.
Уверен, что часть из вас так разрабатывает приложения прямо сейчас.
За время развития современной индустриции мобильной разработки придумано ни одно средство, позволяющее свести к минимуму описанные выше затраты, если не убрать их полностью. Что если парой кликов «опубилковать тестерам» и «установить» приложение будет установлено на устройствах всех тестеров?
Такие решения есть.
К основным таким решениям на данный момент можно отнести TestFlight [2] и HockeyApp [3].
[2]
[3]
Начало работы с такими системами примерно одинаково и состоит из следующих шагов:
Это занимает пять минут. Теперь от финального коммита до установки приложения на устройство тестера — два действия.
Тестерам в час X приходит письмо:
Нажав на Install, тестер начинает процесс установки приложение с сервера, после чего может начинать свою работу.
Пример того, что Вам нужно добавить в Ваш исходный код для минимальной и необходимой работы TestFlight:
[TestFlight takeOff:@"YOUR_KEY"];
Это все. Вам необходимо это вставить в метод UIApplicationDelegate:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
Это все, что вашему приложению как клиенту SDK необходимо сделать для того, чтобы:
По упоминаниям в сети, пожалуй, самая популярная система — TestFlight. Но HockeyApp имеет ряд преимуществ перед TestFlight:
Возможность | TestFlight | HockeyApp |
Простота использования | + | + |
Бесплатность | + Платный функционал будет только в будущем |
- Есть бесплатный триальный период |
Upload API | + | + |
Подключение баг-треккера для создания задач | - | + JIRA и Redmine и др. |
Скорость работы сайта | ± Частенько тормозит даже когда Там ночь |
+ |
Open Source | - SDK доступна в виде .a — и .h — файлов |
+ |
TestFlight самое популярныео решение в данной нише. Может быть, из-за нагрузки, может быть, по другим причинам серсис бывает недоступен, особенно в конце весны, когда много разработчиков проголосовали в пользу HockeyApp ногами.
Надеюсь, удалось показать, как подобные системы позволяют полностью избавить вас от рутины, которая ест время вашей команды, упростить сбор информации в время тестирования, упростить создание задач в баг-треккере, сгруппировать одинаковые проблемы. В общем, сделать все, чтобы облегчить вашу жизнь.
Впервые сталкнувшись с такими системами, люди обычно разводят руками и говорят: «Магия».
Автор: Silf
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/ios-development/12029
Ссылки в тексте:
[1] Configuration Utility: http://support.apple.com/kb/DL1465
[2] TestFlight: http://testflightapp.com
[3] HockeyApp: http://hockeyapp.net
[4] Provisioning Portal: https://developer.apple.com/ios/manage/overview/index.action
Нажмите здесь для печати.