Проверьте интеграцию с Библиотекой платежей Google Play.

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

Лицензия тестировщиков

Чтобы настроить тестеры лицензий, см. раздел Тестирование внутриприкладного биллинга с лицензированием приложений .

Использование лицензионных тестеров дает следующие преимущества:

  • Обычно Google Play Billing Library блокируется для приложений, которые не подписаны и не загружены в Google Play. Тестировщики лицензий могут обойти эту проверку, то есть вы можете загружать приложения для тестирования, даже для приложений, использующих отладочные сборки с отладочными подписями без необходимости загрузки в новую версию вашего приложения. Обратите внимание, что имя пакета должно совпадать с именем приложения, настроенного для Google Play, а учетная запись Google должна быть тестером лицензий для учетной записи Google Play Console.
  • Тестировщики лицензий имеют доступ к тестовым способам оплаты, которые позволяют избежать взимания с тестировщиков реальных денег за покупки. Вы также можете использовать тестовые способы оплаты для имитации определенных ситуаций, например, когда платеж отклонен. На рисунке 1 показаны эти тестовые формы оплаты, как они появляются в процессе покупки.
  • Тестировщики лицензий могут быстро тестировать функции подписки .
Лицензированные тестировщики имеют доступ к способам оплаты тестов
Рисунок 1. Тестировщики лицензий имеют доступ к способам оплаты тестирования.

Вот некоторые дополнительные сведения о процессе тестовой закупки:

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

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

  • Тестовые аккаунты должны быть на Android-устройстве тестировщика.
  • Если на устройстве зарегистрировано несколько учетных записей, покупка совершается с той учетной записи, с которой загружено приложение.
  • Если ни один из аккаунтов не загрузил приложение, покупка совершается с первого аккаунта.

Перед распространением приложения вы можете использовать тестовые треки Google Play для выполнения дополнительной проверки. Например, вы можете использовать тестовые треки, чтобы ваша команда QA квалифицировала новый релиз.

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

Чтобы протестировать интеграцию библиотеки Google Play Billing Library с помощью тестовых треков, выполните следующие действия:

  1. Опубликуйте свое приложение в тестовой версии . Обратите внимание, что после публикации приложения в тестовой версии может потребоваться несколько часов, прежде чем оно станет доступно для тестировщиков.
  2. Убедитесь, что каждый тестировщик соглашается на тестирование вашего приложения . На URL-адресе подтверждения вашего теста ваши тестировщики видят объяснение того, что значит быть тестировщиком, а также ссылку для подтверждения.

Вы можете протестировать свою интеграцию на любом аппаратном устройстве на базе Android, работающем под управлением Android 1.6 или выше. На устройстве должна быть установлена ​​последняя версия приложения Google Play. Для получения общей информации о том, как настроить устройство для использования при разработке приложений Android, см. раздел Использование аппаратных устройств .

Играть в Billing Lab

Play Billing Lab — это приложение для Android, которое помогает разработчикам тестировать интеграцию с платежной системой Google Play. Оно предоставляет разработчикам простой и удобный способ тестировать функции выставления счетов, интегрировать быстрее и запускать с большей уверенностью. Вы можете загрузить и установить Play Billing Lab из Play Store .

Play Billing Lab позволяет вам выполнять следующие действия в ходе тестирования:

Play Billing Lab Панель инструментов
Рисунок 2. Панель инструментов Play Billing Lab.

Тестирование одноразовых продуктов

Тестовые расходные материалы

При тестировании расходных материалов проверяйте различные ситуации, включая следующие:

  • Успешная покупка, при которой пользователь получает товар. С лицензией тестера вы можете использовать Тестовый инструмент, всегда одобряет способ оплаты.
  • Покупка, при которой не удалось списать платежный метод, и пользователь не должен получить товар. С помощью тестера лицензии вы можете использовать инструмент Test, всегда отклоняет платежный метод.
  • Убедитесь, что товары можно приобретать несколько раз.

Убедитесь, что покупки правильно подтверждены, как описано в обработке покупок . Для покупок от тестировщиков лицензий возврат средств за покупку будет произведен через 3 минуты, если ваше приложение не подтверждает покупку, и вы получите электронное письмо об отмене. Вы также можете проверить вкладку «Заказы» в консоли Google Play, чтобы узнать, был ли возврат средств за заказ произведен через 3 минуты.

Тестирование нерасходуемых продуктов

Нерасходуемые товары должны быть проверены так же, как и расходуемые товары, но вы должны убедиться, что товар не может быть куплен снова в вашем приложении. Обязательно проверьте подтверждение покупки как для нерасходуемых товаров, так и для расходуемых товаров (если применимо), поскольку логика обработки каждого из двух типов покупок различается.

Тест ожидающих покупок

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

  1. Совершите покупку с использованием отложенной формы оплаты . Медленная тестовая карта, отклоняется через несколько минут , как показано на рисунке 3. Перезапустите приложение, убедитесь, что покупка не была одобрена.

    протестируйте покупку с отклоненной медленной тестовой картой
    Рисунок 3. Тестовая покупка с отклоненной медленной тестовой картой.

  2. Совершите покупку с отложенной формой оплаты Медленная тестовая карта, одобряется через несколько минут , как показано на рисунке 4. Подождите несколько минут, подтвердите, что покупка была одобрена.

    протестируйте покупку с помощью одобренной медленной тестовой карты
    Рисунок 4. Проверьте покупку с помощью одобренной медленной тестовой карты.

Более подробную информацию можно найти в разделе Обработка ожидающих транзакций .

Тестовые функции, специфичные для подписки

Потоки покупки для одноразовых продуктов и подписок похожи, но у подписок есть дополнительные сценарии, такие как успешное или отклоненное продление подписки. Для тестирования продлений вы можете использовать Тестовая карта, всегда одобряет и Тестовая карта, всегда отклоняет способы оплаты, доступные для тестировщиков лицензий, как показано на рисунке 1. Используйте эти платежные инструменты для тестирования сценариев за пределами сценария успешной подписки.

Подобно одноразовым продуктам, проверьте, что покупки правильно подтверждены, как описано в обработке покупок . Для покупок у тестировщиков лицензий возврат средств за покупку осуществляется через 3 минуты, если ваше приложение не подтверждает покупку, и вы получаете электронное письмо об отмене. Вы также можете проверить вкладку «Заказы» в консоли Google Play, чтобы узнать, был ли заказ возвращен через 3 минуты.

Периоды продления

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

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

Период подписки на продукцию Тестовое продление подписки
1 неделя 5 минут
1 месяц 5 минут
3 месяца 10 минут
6 месяцев 15 минут
1 год 30 минут

Функции подписки на основе времени, такие как бесплатные пробные версии, также сокращаются для тестирования. В следующей таблице указаны периоды времени тестирования, связанные с функциями подписки на основе времени:

Особенность Тестовый период
Подтверждение покупки 5 минут
Бесплатная пробная версия 3 минуты
Период действия ознакомительной цены То же, что и в тестовом периоде подписки
Льготный период 5 минут
Удержание счета 10 минут
Пауза (1 месяц) 5 минут
Пауза (2 месяца) 10 минут
Пауза (3 месяца) 15 минут

Ускорение обновления

Вы также можете использовать Play Billing Lab и лицензированных тестировщиков для ускорения сроков продления тестовых подписок, выполнив следующие действия:

  1. Нажмите «Управление» на карточке настроек подписки на панели управления .
  2. Выберите активную подписку, которую вы хотите протестировать.
  3. Нажмите «Обновить сейчас» .
тестовая подписка продлить сейчас
Рисунок 5. Тестовое ускорение периода продления подписки.

После нажатия кнопки « Продлить сейчас» тестовая подписка будет вскоре продлена.

Обратите внимание, что:

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

Предложения пробной версии

С функцией тестирования пробного предложения Play Billing Lab тестер лицензий может тестировать и использовать бесплатные пробные или ознакомительные предложения неограниченное количество раз, установив флажок Тестировать бесплатную пробную версию или ознакомительное предложение и применив изменение. Это устраняет необходимость создания нескольких учетных записей для тестирования пробного предложения, доступного только новым подписчикам.

пробные предложения
Рисунок 6. Предложения тестового периода.

Изменение цен

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

  1. Нажмите «Управление» на карточке настроек подписки на панели управления .
  2. Выберите активную подписку, которую вы хотите протестировать.
  3. Введите новую цену.
  4. Установите или снимите флажок «Отказ пользователя» в соответствии с требованиями вашего теста.
  5. Нажмите «Применить» .
изменение цены на тестовую подписку
Рисунок 7. Тестовое изменение цены подписки.

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

При планировании периодов тестирования следует учитывать следующие соображения:

  • Из-за короткого срока обновления для тестировщиков лицензий существует вероятность, что миграция цен, выполненная с консоли, не будет зарегистрирована для тестировщиков лицензий. Чтобы гарантировать возможность тестирования уведомлений об изменении цен и писем, разработчикам следует отложить выставление счетов как минимум на один час после запуска изменения цен.
  • Снижение цен не имеет периода уведомления. Пользователи уведомляются о снижении цен вскоре после миграции когорты. Это не меняется при тестировании.
  • В случае повышения цен время тестового уведомления рассчитывается так же, как и при фактическом повышении:
    • Первая плата взимается с пользователя в первую годовщину выставления счета после обязательного периода уведомления.
    • Сроки уведомления отсчитываются в обратном порядке от даты первого списания средств.
    • Последнее уведомление всегда поступает за 1 минуту до списания средств, независимо от расчетного периода.

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

Фактический расчетный период базового плана Тестовый расчетный период Тестовый период уведомления (регионы с возможностью подписки и отказа с уведомлением за 30 дней) Тестовый период уведомления (регионы, для которых действует отказ от участия, с уведомлением за 60 дней)
1 неделя 5 минут 5 минут 10 минут
1 месяц 5 минут 5 минут 10 минут
3 месяца 10 минут 3 минуты 6 минут
6 месяцев 15 минут 2 минуты 4 минуты
1 год 30 минут 3 минуты 6 минут

Тестовые случаи

Разверните следующий раздел, нажав «Показать/Скрыть» , чтобы отобразить сценарии тестирования, которые следует использовать для проверки интеграции подписки.

Тест ожидающих транзакций

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

  1. Совершите покупку с использованием отложенной формы оплаты . Медленная тестовая карта, отклоняется через несколько минут , как показано на рисунке 8. Перезапустите приложение, убедитесь, что покупка не была одобрена.

    протестируйте покупку с отклоненной медленной тестовой картой
    Рисунок 8. Тестовая покупка с отклоненной медленной тестовой картой.

  2. Совершите покупку с отложенной формой оплаты Медленная тестовая карта, одобрение через несколько минут , как показано на рисунке 9. Подождите несколько минут, подтвердите, что покупка была одобрена.

    протестируйте покупку с помощью одобренной медленной тестовой карты
    Рисунок 9. Проверьте покупку с помощью одобренной медленной тестовой карты.

Тестовые промокоды

Вы можете использовать Google Play Console для создания кодов для собственного тестирования . Помните, что вы можете создать только 500 промокодов в квартал для всех управляемых продуктов в приложении.

Вам следует протестировать следующие сценарии использования промокода:

  • При вводе промокода в диалоговом окне покупки, запущенном в вашем приложении.
  • При активации промокода в приложении Google Play Store.
  • При активации промокода на сайте https://play.google.com/store с помощью кнопки «Активировать» в левой навигационной панели.

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

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

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

Протестируйте опыт покупки в разных регионах

Вы можете протестировать процесс покупки с Play Billing Lab или без него:

Тест с

Приложение Play Billing Lab для Android позволяет вам тестировать процесс покупки в любом регионе. Однако для использования Play Billing Lab вы должны быть лицензированным тестировщиком. Для тестирования выполните следующие шаги:

  1. Зарегистрируйте пользователя, выставляющего счета за приложение, в качестве тестировщика лицензий.
  2. Войдите в приложение Play Billing Lab под тем же именем пользователя.
  3. Выберите нужную страну и примените изменения в Play Billing Lab.
  4. Запустите процесс покупки в тестируемом приложении.
опыт тестовых закупок в разных регионах
Рисунок 10. Опыт тестовых покупок в разных регионах.

Тест без

Вы также можете протестировать процесс покупки в любом регионе без использования Play Billing Lab. Используйте следующие шаги для тестирования:

  1. Создайте новый аккаунт Gmail. Аккаунт может быть создан в любой стране.
  2. При желании вы можете назначить пользователю тестера лицензий.
  3. Подключитесь к VPN в нужной стране для тестирования.
  4. Запустите процесс покупки.

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

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

Протестируйте процесс покупки, используя реальные способы оплаты.

Вы можете протестировать процесс покупки с реальными способами оплаты с помощью приложения Play Billing Lab для Android.

Для проверки реальных способов оплаты выполните следующие шаги:

  1. Зарегистрируйте пользователя учетной записи Google в качестве тестировщика лицензий.
  2. Войдите в приложение Play Billing Lab под тем же именем пользователя.
  3. Включите реальные способы оплаты в приложении Play Billing Lab.
  4. Перезапустите и запустите процесс покупки в тестируемом приложении.