集成情况应在整个开发过程中不断测试。为了在开发阶段进行测试,我们建议您让许可测试人员和 Play 结算实验室将本部分中介绍的各种场景过一遍。
许可测试人员
如需配置许可测试人员,请参阅使用应用许可来测试应用内购结算功能。
让许可测试人员进行测试具有以下优势:
- 一般来说,未经过签名并上传到 Google Play 的应用不能使用 Google Play 结算库。许可测试人员可以绕过此检查,这意味着您可以旁加载应用以进行测试,即使是使用带有调试签名的调试 build 的应用,也无需上传到新版应用。请注意,软件包名称必须与为 Google Play 配置的应用的软件包名称一致,并且 Google 账号必须是 Google Play 管理中心账号的许可测试人员。
- 许可测试人员可以使用测试用付款方式,该方式不会针对测试人员的购买交易收取真实费用。此外,该方式也可以用来模拟付款遭拒等情况。图 1 显示了购买流程中出现的这些测试付款方式。
- 许可测试人员可以快速测试订阅功能。

以下是对购买流程测试的一些详细附加说明:
- 进行购买测试时,采用的应用购买流程与实际购买流程相同。
- 系统不会针对购买测试计算税费。
- Google Play 会在购买对话框中心显示一条通知,指明此为购买测试。
您可以展开购买对话框来确认进行购买的账号。请注意以下几点:
- 必须在测试人员的 Android 设备上设置测试账号。
- 如果设备上有多个账号,会使用下载应用时所用的账号进行购买。
- 如果没有账号下载过应用,则使用第一个账号进行购买。
您在分发应用之前,可以使用 Google Play 测试轨道来执行额外的验证。例如,您可以利用测试轨道让 QA 团队检查新版本是否符合条件。
借助测试轨道,用户可以从 Google Play 安装您的应用,并测试尚未公开发布的应用版本。用户可以在 Google Play 中使用任何付款方式真正进行购买。
如需使用测试轨道测试 Google Play 结算库的集成,请执行以下操作:
- 将您的应用发布到测试轨道。请注意,应用发布到测试轨道后,可能需要过几个小时才能由测试人员使用。
- 确保每个测试人员都选择加入您应用的测试。在测试的加入测试网址上,测试人员会看到其职责说明,以及选择加入测试的链接。
您可以在搭载 Android 1.6 或更高版本的任何 Android 设备上测试集成,必须在设备上安装最新版本的 Google Play 应用。有关如何设置设备以便用于开发 Android 应用的一般信息,请参阅使用硬件设备。
Play Billing Lab
Play Billing Lab 是一款 Android 应用,可帮助开发者测试其与 Google Play 结算系统的集成。开发者可以借助此应用便捷地测试结算功能,更快地进行集成,并更加信心十足地发布应用。 您可以从 Play 商店下载并安装 Play 结算实验室。
借助 Play 结算服务实验室,您可以在测试中执行以下操作:
- 在 Play 结算服务实验室中更改 Play 国家/地区,并将设置应用于测试。这样一来,无论测试人员实际从哪里进行测试,都可以在不同国家/地区测试自定义用户体验
- 使用同一账号反复测试试用或初次体验优惠
- 测试订阅价格变动,而不会影响其他有效订阅者
- 加快订阅续订速度,以加快测试速度
- 使用真实的支付方式进行测试,以绕过某些购买流程风险信号

测试一次性商品
测试消耗型商品
在测试消耗型商品时,请测试各种情况,其中包括:
- 购买交易成功,用户收到商品。对于许可测试人员,您可以使用测试用付款方式,一律批准付款方式。
- 在购买交易中,通过付款方式扣款失败,用户不应收到商品。对于许可测试人员,您可以使用测试用付款方式,一律拒绝付款方式。
- 确保商品可以多次购买。
验证购买交易是否像处理购买交易中所述的那样得到了正确的确认。对于许可测试人员发起的购买交易,如果您的应用未确认购买交易,将在 3 分钟后退款,并且您将收到一封关于取消购买交易的电子邮件。您也可以前往 Google Play 管理中心的订单标签页,查看是否有个订单在 3 分钟后退款。
测试非消耗型商品
非消耗型商品的测试应与消耗型商品相同,但您应验证应用中是否无法重复购买商品。请务必对非消耗型商品和消耗型商品的购买交易确认都进行验证(如果适用),因为这两种购买交易的处理逻辑是不一样的。
测试待处理的购买交易
测试待处理的购买交易,确认当购买交易状态变为 PURCHASED
后,商品应被授予许可。许可测试人员还可以使用两种测试付款方式,以测试在几分钟后自动完成或取消的延迟付款方式。
使用延迟付款方式慢速测试卡,几分钟后拒绝进行购买,如图 3 所示。重启应用,验证购买交易是否未授予许可。
图 3. 使用遭拒的慢速测试卡测试购买交易 使用延迟付款方式慢速测试卡,几分钟后批准进行购买,如图 4 所示。等待几分钟,验证购买交易是否已授予许可。
图 4. 使用已获批准的慢速测试卡测试购买交易
如需了解详情,请参阅处理待处理的交易。
测试订阅专用功能
一次性商品和订阅的购买流程类似,但订阅还有其他场景,如续订成功或遭拒。如需测试续订,您可以使用许可测试人员可用的测试卡,一律批准和测试卡,一律拒绝这两种付款方式,如图 1 所示。使用这些付款方式来测试除成功订阅之外的场景。
与一次性商品类似,请验证购买交易是否像处理购买交易中所述的那样得到了正确的确认。对于许可测试人员发起的购买交易,如果您的应用未确认购买交易,将在 3 分钟后退款,并且您将收到一封关于取消购买交易的电子邮件。您也可以前往 Google Play 管理中心的订单标签页,查看是否有个订单在 3 分钟后退款。
续订期
测试订阅不仅在续订速度上比实际订阅快,而且最多可续订六次(免费试用期和入门期除外)。
下表列出了时长不同的订阅的测试续订时间。这些时间均为近似值。您可能会看到这与事件的精确时间存在细微的差异。为了弥补差异,请在每个订阅到期日期之后调用 API 以查看当前状态。
生产订阅期 | 测试订阅续订 |
1 周 | 5 分钟 |
1 个月 | 5 分钟 |
3 个月 | 10 分钟 |
6 个月 | 15 分钟 |
1 年 | 30 分钟 |
基于时间的订阅功能(如免费试订)也为了方便测试而缩短了时间。下表列出了与基于时间的订阅功能相关联的测试时间段:
功能 | 测试期 |
账号保留功能 | 10 分钟 |
免费试订 | 3 分钟 |
宽限期 | 5 分钟 |
初次体验价周期 | 与订阅测试周期相同 |
暂停(1 个月) | 5 分钟 |
暂停(2 个月) | 10 分钟 |
暂停(3 个月) | 15 分钟 |
价格上调意见征求期 (仅适用于韩国 (KR) 地区) |
3 分钟 |
购买交易确认 | 5 分钟 |
加速续订
您还可以使用 Play 结算服务实验室和许可测试人员,按照以下步骤加快测试订阅续订周期:
- 在信息中心的订阅设置卡片中,点击管理。
- 选择要测试的有效订阅。
- 点击立即续订。

点击立即续订按钮后,测试订阅很快就会续订。
请注意:
- 必须先确认测试订阅,然后才能使用加速续订功能,否则订阅将被取消。
- 续订流程可能需要几秒钟才能完成。
- 续订订阅时,无法使用订阅价格变动功能。
- 如果价格变动生效时您点击立即续订按钮,并且用户已接受价格变动,Play 会应用新价格。不过,如果新价格需要用户接受,但用户尚未同意,Play 会取消订阅。
试用优惠
借助 Play 结算服务实验室的试用优惠测试功能,许可测试人员可以选中测试免费试用或初次体验价优惠复选框并应用更改,从而无限次测试和使用免费试用或初次体验价优惠。这样一来,您就无需创建多个账号来测试仅面向新订阅者的试用优惠。

价格变动
您还可以使用 Play 结算服务实验室和许可测试人员来测试订阅价格变动,而不会影响其他活跃订阅者,具体步骤如下:
- 在信息中心的订阅设置卡片中,点击管理。
- 选择要测试的有效订阅。
- 输入新价格。
- 根据测试要求,选中或取消选中用户选择停用复选框。
- 点击应用。

应用更改后,价格会更新,但仅适用于测试人员,且从下次续订开始生效。其他有效订阅者不会受到影响。所有许可测试人员规则都适用于测试订阅。然后,测试人员可以测试价格变动触发的下游流程,例如价格变动通知。
在规划测试期限时,请注意以下事项:
- 由于许可测试人员的续订期较短,因此从 Play 管理中心执行价格迁移时,可能不会为许可测试人员注册。为了确保价格变动通知和电子邮件可供测试,开发者应在触发价格变动后,将结算时间延迟至少一小时。
- 价格下调没有通知期限。同类群组迁移后不久,用户就会收到有关价格下调的通知。测试时这一点不会有变。
- 对于价格上调,测试通知时间的计算方式与实际价格上调时相同:
- 系统会在规定的通知期限过后的第一个结算周年向用户首次收取费用。
- 通知时间从首次收费日期开始向后计算。
- 无论结算周期如何,最终通知始终都是在收费前 1 分钟发出。
下表显示了几个实际结算周期的测试结算周期和通知期限:
实际基础方案结算周期 | 测试结算周期 | 测试通知期限(“用户选择接受才生效”和“用户选择拒绝才无效”地区,通知期限为 30 天) | 测试通知期限(“用户选择拒绝才无效”地区,通知期限为 60 天) |
1 周 | 5 分钟 | 5 分钟 | 10 分钟 |
1 个月 | 5 分钟 | 5 分钟 | 10 分钟 |
3 个月 | 10 分钟 | 3 分钟 | 6 分钟 |
6 个月 | 15 分钟 | 2 分钟 | 4 分钟 |
1 年 | 30 分钟 | 3 分钟 | 6 分钟 |
价格上调同意声明
与需要用户同意的价格上调相关的信息将通过 purchases.subscriptionsv2.get
API 提供给您。
在价格上调生效之前,Google Play 会向相关用户(包括许可测试人员)发送两次推送通知和电子邮件价格上调通知。测试的通知期如下:
通知时间安排 | 测试通知期 |
第一次通知 | 3 分钟 |
第二条(最终)通知 | 1 分钟 |
测试用例
点击显示/隐藏可展开下面一部分,显示您应使用哪些测试场景来验证订阅集成。
测试待处理的交易
您应该测试当购买交易状态变为 PURCHASED
时,待处理的交易是否得到正确处理,并且相应地更新了授权。许可测试人员还可以使用两种测试付款方式,以测试在几分钟后自动完成或取消的延迟付款方式。
使用延迟付款方式慢速测试卡,几分钟后拒绝进行购买,如图 8 所示。重启应用,验证购买交易是否未授予许可。
图 8. 使用遭拒的慢速测试卡测试购买交易 使用延迟付款方式慢速测试卡,几分钟后批准进行购买,如图 9 所示。等待几分钟,验证购买交易是否已授予许可。
图 9. 使用已获批准的慢速测试卡测试购买交易
测试促销代码
您可以使用 Google Play 管理中心为您自己的测试创建代码。请注意,您针对一个应用中所有受管理的商品,每个季度最多只能创建 500 个促销代码。
您应测试以下促销代码兑换场景:
- 在您的应用内启动的购买对话框中输入促销代码。
- 在 Google Play 商店应用中兑换促销代码。
- 在 https://play.google.com/store 上使用左侧导航栏中的兑换按钮兑换促销代码。
在这些场景中,您应以尽可能多的方式测试代码的兑换。至少执行以下测试:
- 在安装应用之前进行兑换。
- 当应用在前台运行时进行兑换。请注意,对于此测试,您还需要一台设备,以使用 Google Play 商店应用进行测试。请务必测试在应用中不同屏幕上的兑换情况。
- 在多窗口模式下进行兑换,在这种模式下,您的应用和 Google Play 商店应用会同时显示。
对于每个测试,请确保正确检测到商品并向用户发送通知。
测试不同地区的购买体验
您可以使用 Play Billing Lab 或不使用它来测试购买体验:
测试
替换为
借助 Play Billing Lab Android 应用,您可以在任何地区测试购买流程。不过,如需使用 Play 结算实验室,您必须是许可测试人员。请按照以下步骤进行测试:
- 将应用结算用户注册为许可测试人员。
- 使用同一用户登录 Play Billing Lab 应用。
- 选择所需的国家/地区,然后在 Play Billing Lab 中应用更改。
- 在被测应用中启动购买流程。

测试
未使用
您还可以在任何地区测试购买流程,而无需使用 Play 结算实验室。请按照以下步骤进行测试:
- 创建一个新的 Gmail 账号。您可以在任何国家/地区创建账号。
- 您可以选择将用户设置为许可测试人员。
- 通过 VPN 进入所需的测试国家/地区。
- 启动购买流程。
您可以清除 Play 商店数据和缓存,然后针对您要测试的任何国家/地区重复第 3 步和第 4 步。切换到新的国家/地区后,您需要清除 Google Play 商店的数据,以移除与之前的国家/地区相关的数据。
无论您实际从哪里进行测试,这两种测试购买的方法都可以让您测试任何地区的优惠地区资格条件和用户体验。
使用真实支付方式测试购买体验
您可以使用 Play 结算服务实验室 Android 应用,通过真实的支付方式测试购买体验。
请按照以下步骤测试真实支付方式:
- 将 Google 账号用户注册为许可测试人员。
- 使用同一用户登录 Play Billing Lab 应用。
- 在 Play Billing Lab 应用中启用真实支付方式。
- 重启并启动正在测试的应用中的购买流程。