середу, 29 липня 2015 р.

iOS 8: Бета тестирование с помощью TestFlight

TestFlight существует уже много лет, как для решения повседневных проблем, так и для распространения iOS приложений для бета тестирования. Ранее в этом году, Apple выкупила Burstly, компанию, которая основала TestFlight. В течение этого года на WWDC, Apple показала нам, что значит это приобретение для iOS программистов. Будьте уверены, это хорошие новости.

TestFlight был интегрирован в iTunes Connect и сейчас доступен как «родное» приложения для девайсов с iOS 8. Если Вы планируете пользоваться платформой для бета распространения от Apple, тогда Вы быстро заметите некоторые произошедшие изменения. В этой статье, Вы изучите насколько легко начать использовать TestFlight.

1. TestFlight

Приобретение Apple TestFlight это не просто интеграция TestFlight в рабочий процесс разработки для iOS. Ряд ключевых аспектов для бета распространения изменились к лучшему.

Идентификаторы устройств и Provisioning Profiles

Для примера, нет больше необходимости изобретать велосипед с идентификаторами устройств и provisioning profiles. Для тестирования приложения с помощью TestFlight больше нет необходимости добавлять устройство в Ваш аккаунт разработчика и больше нет необходимости для генерирования provisioning profile для ad hoc распространения.

Внутренние тестировщики

Apple провела черту между внутренними тестировщиками и бета тестировщиками. Внутренние тестировщики являются членами Вашей команды разработчиков, у которых есть общий аккаунт в iTunes Connect. Внутренние тестировщики настраиваются в iTunes Connect, и Вы можете подключить до 25 людьми для одного приложения. Для того чтобы сделать текущую версию приложения доступной для внутренних тестировщиков достаточно просто переключить переключатель в iTunes Beta Testers

Бета тестировщики

Бета или внешним тестировщиком может быть любой, кто имеет электронный адрес, на который iTunes Connect может выслать приглашение. Вы можете подключить до 1,000 бета тестировщиков на одно приложение. Подождите, дальше еще интереснее. Каждый бета тестировщик может иметь несколько устройств для тестирования, что является фантастической новостью для больших компаний, которые испытывают неприятности с лимитом в 100 устройств для одного аккаунта.

Бета рецензия приложения

Хотя есть и один подводный камень. Каждая версия приложения, которую вы загружаете для распространения бета тестровщикам, должна пройти через рецензию от Apple. К счастью это не является справедливым для внутренних тестировщиков. В тот момент, когда вы загружаете новую версию приложения в iTunes Connect, она моментально становиться доступной для каждого внутреннего тестировщика.

Аккаунт в песочнице

В момент, когда тестировщик открывает Ваше приложение, то моментально для него создается аккаунт в песочнице. Это означает, что больше нет необходимости в создании тестовых акаунтов в iTunes Connect. Тестирование In-App Purchases никогда не было настолько простым.

TestFlight для iOS

Apple также выпустила TestFlight как приложение для iOS, в котором тестировщики могут загружать, устанавливать и обновлять тестовые версии приложений. Это очень удобно для управления тестовыми версиями и для поддержания обратной связи с разработчиками приложения.

2. Первые шаги

Шаг 1: Настройки проекта

Давайте для начала создадим пробное приложение в Xcode 6. Откройте Xcode 6, создайте новый проект, основанный на шаблоне Single View Application в секции iOS > Application.

Присвойте Вашему приложению имя и идентификатор организации и нажмите Next. Укажите Xcode, где бы вы хотели сохранить Ваш проект и нажмите кнопку  Create.

Шаг 2: ID приложения

Перейдите на Apple iOS Dev Center и создайте App ID для приложения. Для того чтобы пользоваться TestFlight, мы должны создать приложение в iTunes Connect и вот для чего и нужен App ID.

Я отметил App ID suffix как explicit App ID, но все должно работать и с wildcard App ID.

Как я упоминал ранее, реализация TestFlight от Apple имеет много преимуществ. Вам больше нет необходимости в создании provisioning profile для ad hoc распространения, что в свою очередь влечет за собой то, что Вам более нет необходимости точно определять какие устройства будут разрешены для бета тестирования. Мы увидим как это работает через минуту.

Шаг 3: iTunes Connect

Войдите в iTunes Connect и создайте новое приложение. Укажите правильный App ID из выпадающего списка и установите номер версии 1.0. Если Вы не увидели нужный App ID в выпадающем списке, тогда подождите пять минут и попробуйте снова. Это может занят несколько минут, прежде чем изменения, которые Вы сделали в iOS Dev Center, синхронизируются в iTunes Connect.

К счастью, больше нет необходимости заполнять приложение всей необходимой информацией. Нажмите на вторую вкладку, Prerelease, чтобы увидеть список доступных для тестирования версий Вашего приложения. Сейчас список пуст. Давайте подготовим наше приложение для тестирования, чтобы исправить эту оплошность.

3. Загрузка тестовой версии приложения

Загрузить тестовую версию приложения очень просто используя Xcode 6. Откройте Ваш проект через Xcode, перейдите в target's build settings и убедитесь в том, что Code Signing Identity для release builds установлены в позицию iOS Developer для Any iOS SDK. Provisioning Profile для release builds должен быть установлен в позицию Automatic. Это настройки по умолчанию, когда создаться проект в Xcode 6.

Перед тем как мы создадим архив для отправки в iTunes Connect, мы должны добавить обязательные иконки нашего приложения. Если мы этого не сделаем, то Xcode скомпилирует приложение и откажет в отправке тестовой версии в iTunes Connect.

Схема по умолчанию для создания архива нашего с настройками для релиза проекта именно то, что мы хотим. Подсоедините тестовое устройство с iOS 8 к вашему рабочему компьютеру и выберите Archive из меню Xcode Product для того чтобы создать архив.

Если не возникнут никаких ошибок, Xcode автоматически откроет Organizer, и покажет Вам результат своей работы в виде архива. Выберите его из списка и нажмите Submit справа верху.

Когда вы пытаетесь отправить тестовую версию в iTunes Connect, Xcode может показать предупреждение, такое как на рисунке ниже. Оно говорит о том, что Xcode не может найти соответствующий provisioning profile, который отображает конфигурацию Вашего приложения. К счастью мы видим кнопку Try Again в правом нижнем углу. Нажмите на нее для решения данной ошибки.

>За всем этим происходит следующее, Xcode сообщает это в iTunes Connect и создает ad hoc distribution provisioning profile за Вас. Имя это provisioning profile начинается с XC: , сообщая о том, что это Xcode создал provisioning profile от Вашего имени.

Убедитесь в том что флажок внизу диалогового окна установлен для того чтобы обеспечить автоматическую регистрацию crash log в iTunes Connect. Это подобно тому, как работает Crashlytics works.

Когда Вы нажали Submit, Xcode начинает загрузку тестовой версии приложения в iTunes Connect. Во время этого процесса происходит большое количество валидаций, таких как проверка на то, что в тестовой версии приложения есть все необходимые размеры иконок.

Если Ваша тестовая версия приложения прошла все проверки, Xcode сообщит Вам о том, что тестовая версия приложения успешно загружена в iTunes Connect.

4. Build Details

Вернитесь назад в iTunes Connect и нажмите на вкладку Builds в секции Prerelease . Ваша версия приложения сейчас должна быть доступной. Нажмите на нее, чтобы увидеть данные по Вашему приложению. Если Вы нажмете вкладку Build Details, то вы увидите техническое резюме выбранной версии.

Нажмите на вкладку TestFlight чтобы увидеть данные текущей версии. На этой странице Вы можете добавить информацию для Ваших тестировщиков и команды из Apple's review team.

В первой секции показывается, когда время для данной версии тестового приложения закончится. Каждая тестовая версия приложения активна на протяжении 30 дней.

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

Третья секция показывает информацию для Apple's review team. Каждая версия Вашего тестового приложения для внешнего тестирования должна проходить через Apple's review.

5. Добавление тестировщиков

Для того чтобы включить TestFlight для вашего приложения, переключите переключатель TestFlight Beta Testing расположенный справа.

В то время как писалась данная статься, TestFlight был доступен только для внутреннего тестирования. Apple анонсировала что откроет TestFlight для внешних тестировщиков в ближайшую неделю или месяц. Если Вы нажмете вкладку Internal Testers, Вы увидите пустой список. Для того чтобы добавить тестировщика в данный список, Вы должны пометить члена команды как внутренний тестировщик. Давайте начнем с себя.

В iTunes Connect, перейдите в Users and Roles и выберите Ваш профиль. Чтобы отметить себя как внутренний тестировщик, переключите переключатель Internal Tester справа. Нажмите Save и перейдите назад к списку внутренних тестировщиков Вашего приложения.

Как Вы можете видеть, внутренние тестировщики должны быть приглашены как тестировщики отдельно для этого приложения. Выберете тестировщиков из списка, которых Вы хотите пригласить и нажмите Save. Тестировщики, которых Вы выбрали, должны получить письмо на их электронный адрес, в котором будет приглашение для тестирования приложения.

6. TestFlight для iOS

Загрузите приложение TestFlight от компании Apple с App Store на устройство, в котором установлена iOS 8. Проверьте Вашу электронную почту и откройте письмо-приглашение для TestFlight. Оно должно быть похожим как на рисунке ниже.

Нажав на кнопку Open in TestFlight, вы принимаете приглашение. После этого откроется приложение TestFlight и предоставит Вам возможность скачать и установить тестовую версию приложения, которую мы загрузили в iTunes Connect. Нажмите Installдля того чтобы установить приложение на Ваше устройство.

Приложение TestFlight показывает Вам весь список приложений, в которых Вы приглашены как тестировщик, что очень похоже на то, как работает веб версия TestFlight. Главная разница в том, что Apple's TestFlight client является «родным» приложением, которое позволяет скачивать, обновлять и открывать приложения из приложения TestFlight.

Вы также будете оповещены о том, что данная версия приложения является тестовой с помощью оранжевой точки перед именем приложения на Вашем «домашнем» экране.

В заключении

Приобретение TestFlight компанией Apple это определенно шаг навстречу разработчикам под iOS. То, что я Вам показал в этой статье, является только первым шагом в направлении на интеграцию TestFlight в рабочий процесс разработки под iOS. Я уверен в том, что много новых возможностей откроется в ближайший месяц.



Оригинал

Немає коментарів:

Дописати коментар

HyperComments for Blogger

comments powered by HyperComments