Как выложить приложение в testflight

Тестирование приложений IOS через TestFlight

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

Тестирование проводится при помощи приложения TestFlight, которое обеспечивает доставку и установку тестовых программ. Время тестовой версии с момента ее отгрузки составляет 60 дней, после чего ожидается загрузка обновленной версии. Если новая версия не отгружена, то тестирование прекращается.

Тестирование разделяется за внутреннее и внешнее. В обоих случаях, составляется список тестировщиков. В случае внешнего тестирования, приложение должно пройти дополнительную «beta»-проверку. Из практики, данная проверка проводится от 1 до 2-х дней. Внутренняя проверка рассчитана на сотрудников компании, которые доверяют разработчикам. Мы склонны применять именно внутреннее тестирование из-за его быстрой динамики.

Этап 1

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Список адресов AppleID необходимо передать разработчикам (или организатору тестирования). Внимание! требуется только AppleID и желательно Фамилия и имя, пароль сообщать НЕ требуется. Если мы являемся Вашими разработчиками, то отправьте нам список через форму внизу статьи или на почту dev@ios-lab.ru

Этап 2

После регистрации Вашего AppleID, на почту Вам придет письмо примерно следующего содержания:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Перейдите по ссылке из письма. В открывшемся окне браузера, Вам необходимо согласиться с условиями и подтвердить намерения.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Этап 3

Для ускорения процесса, Вы можете сообщить разработчику о том, что все тестировщики уже подтвердил свое участие (через форму в конце статьи или на почту dev@ios-lab.ru)

Теперь Вам необходимо установить приложение TestFlight из AppStore.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflightКак выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Этап 4

После подтверждения, разработчик подключает Вас к конкретному тестируемому приложению, после чего Вы получаете следующее письмо

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Перейдите по приглашению из письма и Вы установите целевое приложение. С этого момента Вы можете начинать тестирование.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Обновление

Если разработчик выкатил новый релиз, то Вам потребуется выполнить обновление через TestFlight практически так же, как и любое другое обновление в AppStore.

По истечении срока тестирования, приложение останется работать на Вашем устройстве. Удалить его можно точно так же, как и любое другое.

Не допускайте наличия тестовой и релизной версии приложений на Ваших устройствах. Перед скачиванием релиза, рекомендуется удалить тестовую.

Отзыв о тестовой версии

Вы можете оставить отзыв или сообщить об обнаруженной уязвимости. Для этого Вам необходимо перейти в приложение TestFlight

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Отзыв составляется в виде письма разработчикам, на указанный ими адрес для связи.

Источник

Использование TestFlight для распространения приложений Xamarin.iOS

Теперь сервис TestFlight принадлежит компании Apple и является основным способом бета-тестирования приложений Xamarin.iOS. В этой статье приводятся все этапы процесса TestFlight — от отправки приложения до работы с iTunes Connect.

Бета-тестирование является неотъемлемой частью цикла разработки программного обеспечения, и существует множество кроссплатформенных предложений для упрощения этого процесса, таких как HockeyApp, Applause и, конечно, встроенный инструмент бета-тестирования Google Play для приложений Android. Этот документ посвящен TestFlight компании Apple.

TestFlight — служба бета-тестирования Apple для приложений iOS, она доступна только через iTunes Connect. В настоящее время служба доступна для приложений iOS 8.0 и более поздних версий. TestFlight позволяет участвовать в бета-тестировании как внутренним, так и внешним пользователям, а проверка бета-версии приложения, необходимая для внешнего тестирования, значительно упрощает процесс финальной проверки при публикации в магазине.

Ранее двоичный файл создавался в среде Visual Studio для Mac и отправлялся на веб-сайт TestFlightApp для распространения среди тестировщиков. Новая процедура принесла с собой ряд улучшений, позволяющих публиковать в магазине приложений качественные и хорошо протестированные приложения. Пример:

Требования

Через TestFlight можно протестировать только приложения для iOS 8.0 и более поздних версий.

Все тестировщики должны тестировать приложение как минимум на устройстве с iOS 8. Тем не менее рекомендуется проводить тестирование во всех версиях iOS

Подготовка

Чтобы протестировать сборку в TestFlight, необходимо создать Профиль распространения App Store с новым назначением для бета-тестирования. Это назначение разрешает бета-тестирование в TestFlight, все новые профили распространения App Store автоматически содержат это назначение. Для создания нового профиля выполните пошаговую инструкцию в руководстве Создание профиля распространения.

Можно указать, что профиль распространения содержит назначение для бета-тестирования, в процессе проверки сборки в Xcode, как показано ниже:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Работа с TestFlight

Следующая инструкция описывает шаги, необходимые для начала использования TestFlight для бета-тестирования приложения:

Создание записи iTunes Connect

Войдите на Портал iTunes Connect, используя учетную запись разработчика Apple.

Выберите Мои приложения:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

На экране Мои приложения нажмите кнопку в левом верхнем углу экрана, чтобы добавить новое приложение. Если у вас есть учетные записи разработчика iOS и Mac, будет предложено выбрать тип нового приложения.

Откроется окно отправки данных Новое приложение iOS, которое должно содержать в точности те же сведения, что и файл Info.plist вашего приложения

Дополнительные сведения о создании новой записи iTunes Connect см. в руководстве Создание записи iTunes Connect.

Заполнение формы отправки для нового приложения iOS

Форма должна в точности отражать данные в файле Info.plist, как показано ниже:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflightКак выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Отправка приложения

После создания записи iTunes Connect можно отправить новые сборки. Помните, что сборки должны иметь новое назначение для бета-тестирования.

Сначала нужно создать финальную сборку в среде разработки, затем отправить приложение в Apple через приложение Application Loader или функцию архивирования в Xcode.

Создание архива

Чтобы выполнить сборку двоичного файла в Visual Studio для Mac, необходимо использовать функцию Архивирование. Щелкните правой кнопкой мыши на проекте и выберите Архивирование для публикации, как показано ниже:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

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

Подписывание и распространение приложения

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Дополнительные сведения об этой процедуре см. в разделе Отправка приложения в Apple.

Отправка сборки

Мастер публикации запустит программу Application Loader для загрузки сборки в iTunes Connect. Выберите параметр доставить приложение и отправьте созданный выше файл. Application Loader проверит и отправит сборку в iTunes Connect.

Дополнительные сведения об этой процедуре см. в разделе Отправка приложения в Apple.

Финальная сборка

Поскольку подключаемый модуль Xamarin для Visual Studio не поддерживает архивирования приложений Xamarin.iOS для публикации в App Store, существует два варианта для публикации приложения iOS из Visual Studio. Эти особые значения приведены ниже.

Оба этих варианта описаны в руководстве Сборка для распространения.

Отправка сборки

Для отправки приложения в Apple необходимо переместить узел сборки и воспользоваться программой Application Loader, которая устанавливается как часть Xcode. Дополнительные сведения о доступе к программе Application Loader см. в руководстве Apple Доступ к Application Loader.

Дополнительные сведения об этой процедуре см. в разделе Отправка приложения в Apple.

В руководстве Публикация в App Store эти шаги описаны более подробно, обратитесь к этому руководству, если хотите глубже понять процесс отправки приложения в App Store.

При возвращении к разделу Мои приложения в iTunes Connect вы должны увидеть, что приложение успешно отправлено. Теперь вы готовы к проведению бета-тестирования!

Проведение бета-тестирования

Добавление метаданных

Чтобы начать использовать TestFlight, перейдите к вкладке Предварительный выпуск приложения. Появится три вкладки со списком сборок, внутренних тестировщиков и внешних тестировщиков, как показано ниже:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Чтобы добавить метаданные к приложению, нажмите номер сборки и затем TestFlight:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

В разделе Сведения о тестировании вы можете предоставить тестировщикам важные сведения, касающиеся приложения, например:

Обратите внимание, что эти метаданные не требуются для внутренних тестировщиков, но требуются для внешних тестировщиков.

Запуск бета-тестирования

Когда будете готовы к тестированию приложения, включите переключатель Бета-тестирование TestFlight для требуемой версии:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Тестирование каждой сборки остается активным в течение 60 дней с даты включения переключателя «Бета-тестирование TestFlight». На странице Сведения о тестировании отображается количество оставшихся дней для каждой сборки:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Тестирование можно прервать в любое время.

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

Внутренние тестировщики — это члены команды разработчиков, которым в iTunes Connect была назначена одна из следующих ролей:

Каждую сборку можно предоставить не более чем 100 пользователям, причем каждый из них может выполнять тестирование на 30 устройствах.

Чтобы добавить тестировщиков, перейдите к Пользователи и роли на начальном экране iTunes Connect:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Откроется список существующих пользователей iTunes Connect. Чтобы выбрать пользователя, нажмите на его имя, включите переключатель Внутренний тестировщик и затем нажмите кнопку Сохранить:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

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

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

если вы вернетесь в раздел » мои приложения» > внутренних тестировщиков, вы увидите пользователей, добавленных для TestFlight внутренней бета-тестирования:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

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

Можно просмотреть состояние приглашения в столбце «Состояние» на странице «Внутренние тестировщики»:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

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

Чтобы отправить приложение на проверку, нажмите Отправить на проверку бета-версии напротив номера версии, как показано на рисунке ниже:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Для передачи на проверку необходимо ввести все необходимые метаданные на странице «TestFlight бета-версия».

Теперь можно приступить к подготовке приглашений и добавлению до 10 000 внешних тестировщиков на вкладке «Внешние тестировщики». Для этого необходимо ввести их адрес электронной почты, имя и фамилию, как показано на рисунке ниже. Указываемый адрес электронной почты необязательно должен совпадать с Apple ID, это только адрес, на который тестировщик получит приглашение.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Также для упорядочивания можно распределить внешних тестировщиков по группам.

После того как вы открыли сведения о внешних тестировщиках, нажмите кнопку Добавить и подтвердите, что у вас есть согласие пользователей на их приглашение:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

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

Если приложение было отклонено, необходимо исправить проблемы, перечисленные Центре решения проблем, и отправить полностью обновленный двоичный файл на повторную проверку.

Действия тестировщика

После приглашения тестировщиков они получат приглашения по электронной почте, пример приглашения представлен на рисунке ниже:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

После нажатия кнопки Открыть в TestFlight приложение будет открыто в TestFlight. Если TestFlight еще не установлен, то произойдет перенаправление в App Store для скачивания этого приложения.

После открытия вашего приложения в TestFlight на экране появятся подробные сведения о том, что именно необходимо протестировать, и будет предложено установить приложение на устройство тестировщика с iOS 8.0 (или более поздней версией):

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Оранжевая точка перед именем приложения на начальном экране устройства будет указывать на то, что это тестовая сборка.

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

Завершение бета-тестирования

После завершения бета-тестирования можно отправить приложение на проверку компанией Apple для публикации его в магазине App Store. Этот процесс выполняется очень просто: в iTunes Connect щелкните на кнопку Отправить на проверку, как показано ниже:

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Сводка

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

Источник

Отправляем iOS сборки в Firebase и TestFlight с помощью Fastlane

Fastlane состоит из набора инструментов, которые помогут нам различными способами. В сочетании с инструментом CI/CD вы получаете полный пакет автоматизации для вашего проекта iOS (Fastlane также поддерживает Android).

Эта статья может быть длинной, но в конце вы сможете

Первое, что вам нужно, это установить Fastlane. Инструкция здесь.

Теперь давайте настроим Fastlane для нашего проекта. Откройте терминал, перейдите в папку проекта и выполните команду

Fastlane спросит, для чего вы будете его использовать, введите 4 и нажмите Enter. Будем настраивать Fastlane самостоятельно:

Теперь вы должны увидеть новую папку с названием fastlane. В этой папке есть два файла: Fastfile и Appfile. Мы их скоро отредактируем, но сначала давайте поймем, что это за файлы.

Appfile является вспомогательным файлом, и мы там сохраним некоторые настройки, такие как идентификатор приложения, конфигурация сборки и т. д. Эту информацию мы можем легко использовать в функциях внутри Fastfile.

После этого запустите fastlane scan. Вы должны увидеть результат, и в конце он будет результатом ваших тестов. Здесь вы можете найти все доступные параметры для действия сканирования.

Сканирование также выведет отчет в HTML (JSon или JUnit). Обратите внимание, что есть новая папка, созданная сканированием, где содержимое вашего отчета о сканировании красиво представлено в формате HTML, как показано ниже.

Итак, теперь, когда мы закончили настройку Fastlane для тестирования – мы напишем lane для создания сборки нашего приложения и выгрузки его в Firebase App Distribution (ранее Fabric Beta). Я использовал слово lane для действия сканирования, которое мы использовали, хотя мы еще не написали lane. Сейчас это исправим.

Мы почти закончили… Чтобы сбилдить и загрузить ваше приложение, вы должны сначала создать сертификаты, профили и т.д. Что ж, эту трудоемкую задачу можно избежать, если вы решите использовать fastlane match.

Мы собираемся использовать репозиторий git (приватный или публичный, на самом деле не имеет значения) для хранения нашего сертификата и наших provisioning profiles, а match будет выполнять все управление и синхронизировать их. Если у вас есть какие-либо опасения по поводу хранения ваших .p12 и provisioning profiles в общедоступном репозитории, прочтите это. Существует начальная настройка, которая займет 5-10 минут, но после этого вы можете перестать беспокоиться об управлении сертификатами.

Мы будем использовать git для хранения наших сертификатов, поэтому нам нужен свежий репозиторий. Перейдите в любимую систему контроля версий (GitHub, Bitbucket и т.д.) и создайте новый репозиторий.

Вернитесь к своей консоли снова и введите

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

На данный момент мы закончили с match

Перед сборкой нам нужно добавить плагин Firebase App Distribution. В вашем терминале внутри папки проекта введите

Это установит плагин firebase, создаст Pluginfile с инструкциями по установке плагина firebase_app_distribution, а также будет ссылаться на файл плагина из вашего Gemfile. Поэтому, когда вы будете устанавливать пакет на другой компьютер, плагин также будет установлен. Теперь установите firebase cli, набрав

Теперь запустите firebase login, и вы готовы к работе.

Примечание: вы не сможете использовать Firebase, пока не войдете в систему.

Примечание 2: я предполагаю, что у вас уже есть приложение в Firebase (пропускаю ту часть, где вам нужно открыть консоль Firebase, создать новый проект и добавить в него новое приложение).

Откройте свой Fastfile и добавим следующее:

Давайте немного разберемся в этом. Сначала мы используем match

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

gym создает наш проект и сохраняет наши файлы .ipa и .dsym в каталоге архивов (output_directory), который будет создан в каталоге верхнего уровня нашего проекта. Именем нашего ipa будет имя output_name, указанное выше.

Если все пойдет по плану, ваши тестировщики получат электронное письмо и смогут установить ваше приложение.

Также с помощью Fastlane мы можем загружать сборки в TestFlight.

Во-первых, мы будем использовать match для создания наших продакш профилей. Итак, открываем свой терминал, переходим в папку с проектом и введите

и следуем инструкциям. Эта команда создаст ваши production сертификаты, если это необходимо, профили обеспечения установят их в вашу связку ключей, а также добавят их в репозиторий git (или облачное хранилище Google), которое вы указали во время инициализации соответствия выше.

Хорошо, теперь, когда мы получили производственные сертификаты, откройте ваш fastfile и добавьте в него новый lane

Давайте немного разберемся. Мы используем match для управления нашими сертификатами и профилями обеспечения и устанавливаем их на свой компьютер, если они не существуют. Помните, что мы создали их ранее, но если мы перейдем на другой компьютер или запустим это на нашем сервере Jenkins, наши профили и наш сертификат могут не быть установлены в связке ключей. Match позаботится об этом.

Затем мы запускаем сканирование с дополнительным аргументом. Этот аргумент останавливает сборку, если тесты не прошли.

Что ж, это конец моего путешествия по скоростной полосе iOS. Надеюсь, вам все понравилось.

Спасибо за время! Надеюсь, эта статья окажется для вас полезной.

Источник

Сервисы дистрибуции мобильных приложений для iOS. Часть 1: TestFlight

С каждым годом становится всё очевиднее, что для распространения тестовых версий iOS-приложений нужны специализированные сервисы. Это актуально не только для компаний, занимающихся разработкой приложений в “промышленных масштабах”, но и для инди-разработчиков. Причины: увеличение количества устройств с “нестандартным”/”не кратным” размером экрана, отличия в архитектуре центрального и графических процессоров — всё то, что раньше было повседневностью для разработки под Android, теперь становится справедливым и для iOS.

Исторически самым популярным сервисом дистрибуции являлся TestFlight — практически идеал, как в техническом отношении, так и в юзабилити. Однако, после приобретения компанией Apple в начале 2014 года, сервис претерпел ряд неоднозначных изменений, которые с одной стороны сказались негативно на его позиции лидера, а с другой дали шанс альтернативным сервисам побороться за первое место и предложить как минимум равноценную замену, а может быть и что-то более удобное и функциональное.

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

Система оценки: сервисы будут оценены по 10-балльной шкале по каждому из разделов (Регистрация и интеграция, Основной функционал, Дополнительный функционал, Continuous Integration). Суммарная оценка позволит определить победителя (итоговое заключение войдет в последнюю часть обзора).

TestFlight от Apple

Регистрация и интеграция

Пользователи из группы Admin обладают теми же правами, что и пользователи группы Technical, а также могут добавлять новых пользователей в список Internal Testers.

На данный момент установка или использование какого-либо специализированного SDK не требуется.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight
Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight
Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Основной функционал

Если сравнивать новую версию TestFlight с тем, что было доступно разработчикам ранее в рамках стандартных сервисов Apple, то она, в чем-то, несомненно, является шагом вперед. Так, например, количество тестеров увеличено с условных 100 до 1125 (из которых 100 — это доступные и раньше устройства для AdHoc распространения, 25 — это внутренние тестировщики (Internal Testers), а 1000 — внешние (External Testers)), причем если ранее привязка осуществлялась к устройству, то теперь уникальным идентификатором является Apple ID, а значит каждый тестер может проверить работу приложения на всех доступных ему (и, конечно, поддерживаемых приложением) устройствах.

Примечание (от 15 июня 2015): количество устройств, доступных при использовании AdHoc provision profiles с с 8 июня 2015 года было изменено со 100 суммарно, на 100 на каждое семейство устройств (изменение произошло после объявления на WWDC об объединении всех developers programs в одну).

Разница между внутренними и внешними тестировщиками заключается в дополнительном шаге, который добавляется во втором случае: тестовая версия приложения должна быть отправлена для обзора и одобрена специалистами Apple (Beta App Review). Причем первоначальный обзор будет проводиться более тщательно, а все последнующие могут проходить быстрее (но не обязательно). Это, конечно, накладывает определенные ограничения на процесс разработки и требует дополнительного планирования фаз тестирования приложения, с учетом неопределенности сроков прохождения обзора (как и в случае с обычным обзором приложений перед публикацие в AppStore, при отказе в публикации, повторная заявка рассматривается снова в порядке очереди).

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Однако есть и некоторые уникальные возможности: так, например, клиент сервиса (приложение TestFlight) единственный, кто наверняка знает статус установки тестовой версии, альтернативные решения попросту не имеют возможности использовать системные функцие, позволяющие реализовать подобное.

Примечание: статус установки — смена индикации процесса установки, привычная пользователям AppStore. Когда поочередно статус меняется Get — Install — Installing — Open. В других сервисах дистрибуции эта цепочка выглядит так: Install — Installing — Install — приложения попросту не знают результат, был ли установлен тестовый дистрибутив или нет. В случае же с Apple TestFlight цепочка имеет привычный вид: Install — Installing — Open.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Иконка обновленного приложения TestFlight (правильнее будет сказать, что это абсолютно новое native приложение, разработанное в Apple). Ниже пример иконки тестовой версии приложения — оранжевая “точка” позволяет определить, что это не версия из AppStore.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

“Страховка” Apple от обвинений в распространении спама.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Apple не разрешает загрузку дистрибутивов без изменения версии или номера сборки.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Достаточно лаконичная и понятная страница администрирования версий приложения для тестирования.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Письмо-приглашение для участия в тестировании, HTML-форматирование не слишком оптимизировано для мобильных платформ (справедливости ради, хочу отметить, что приложение Mail отображает такие письма корректно, но письма от других сервисов отображаются нормально и в OWA).

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Приложение TestFlight: информация о доступном для тестирования приложении.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

Приложение TestFlight единственное умеет определять результат установки тестовой версии (кнопка Install поменялась на Open) — преимущество, полученное с переходом к Apple.

Как выложить приложение в testflight. Смотреть фото Как выложить приложение в testflight. Смотреть картинку Как выложить приложение в testflight. Картинка про Как выложить приложение в testflight. Фото Как выложить приложение в testflight

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

Резюмируя, можно сказать, что обновленная версия TestFlight просто работает. В данный момент она не имеет особых конкурентных преимуществ (речь идёт о функционале, а не неоспоримом преимуществе — принадлежности компании Apple, которое пока в большей мере является потенциалом).

Дополнительный функционал

На данный момент, к сожалению, компания Apple берет только числом, а не умением. Из явного преимущества можно отметить разве что гораздо большее количество бета-тестеров, которое можно задействовать для внешнего тестирования: на порядок больше, чем у всех остальных альтернативных решений (причина ясна: компания сама контролирует условия распространения приложений и имеет преимущество перед решениями третьих сторон).

Обновление (5 мая 2015): с релизом Xcode 6.3 разработчикам стал доступен Crashes Organizer. Новый функционал, несомненно, хороший признак того, что Apple продолжает развивать свои сервисы, но, к сожалению, компания всё ещё отстаёт от других сервисов:

When you open the Crashes organizer, Xcode begins refreshing the crash reports for your apps. Xcode downloads the top crash reports—crash reports with the most number of occurrences on unique devices—that occurred during the past two weeks. However, there may be up to a three day delay between when you first distribute your app and when crash reports are available in Xcode.

Три дня задержки и период архивного доступа в две недели выглядит несколько обескураживающе.

Continuous Integration

Примечание: описанные далее нюансы использования сервисов как части непрерывной интеграции (continuous integration) в данном обзоре подразумевают, что она будет делаться на основе решения, предлагаемого компание Apple. То есть при помощи Mac OS X Server и Xcode bots — подробно на организации такой интеграции я не буду останавливаться, возможно это станет темой для отдельной статьи. Желающие могут ознакомиться с темой самостоятельно, например, обратившись к официальному руководству от Apple.

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

Итого суммарная оценка по всем разделам: 15 баллов.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *