使用 Xcode 和沙盒在开发过程中的各个阶段进行测试 | 您所在的位置:网站首页 › 关闭app内购买项目有什么区别 › 使用 Xcode 和沙盒在开发过程中的各个阶段进行测试 |
概览
使用 Xcode 和沙盒中的 Apple 测试环境,对你利用 StoreKit 框架实施的 App 内购买项目进行测试。全面的测试有助于你实现以下目标: 确保流畅的购买流程,在 App 中提供积极的客户体验。 实施充分的逻辑来覆盖所有场景,如购买、恢复和使用订阅优惠。 验证 App 在 App Store 上架后,购买项目在生产环境中是否具有正确的行为。 在早期开发阶段中通过 Beta 测试来测试 App 内购买项目时,你需要以下工具: Xcode 中的 StoreKit 测试功能适用于早期开发、持续集成和调试。 沙盒技术适用于利用你在 App Store Connect 中设置的数据的测试场景。要开始测试,请参阅“创建沙盒测试员账户”。 TestFlight 适用于管理通过内部和外部测试员进行的 Beta 测试。有关更多信息,请参阅“TestFlight 让 Beta 测试更简单”。
选取相应的工具,这些工具应支持你需要的测试场景,并要求采用你已准备就绪的设置。 在开发的早期阶段,你可能尚未准备好在 App Store Connect 中配置 App 内购买项目。借助 Xcode 中的 StoreKit 测试功能,你可以在本地配置信息,从而在创建沙盒 Apple ID 之前测试 StoreKit 交易,甚至也可在没有网络连接的情况下进行测试。你可以在 Xcode 模拟器中或真实设备上测试 App。 在 App Store Connect 中设置 App 内购买项目后,就能开始使用沙盒来测试 App 在生产环境中使用的相同产品信息。在沙盒中测试时,你可以测试端到端交易以及从客户端到服务器的交易。也可以测试你的 App 可能依赖的服务器对服务器功能,例如收据验证和 App Store 服务器通知。 借助 TestFlight,你可以从团队成员或外部测试员那里获取反馈,并将沙盒环境用于 App 内购买项目。沙盒内的交易不会产生任何购买项目的费用。下表就环境设置和功能做了比较。 工具 需要 App Store Connect 设置 提供由 App Store 签名的 App 收据 在测试“购买”交易时向用户收费 Xcode 中的 StoreKit 测试功能 否 否 (由 Xcode 签名) 否 沙盒技术 是 是 否 TestFlight (使用沙盒) 是 是 否 控制测试环境 要设置和运行测试场景,你通常需要控制测试环境。例如,你可能需要重置测试账户来重新运行几次同一测试,或者模拟用户在你的 App 外进行并影响测试条件的操作。下表显示了各项工具具备的可控制测试环境的功能。 测试场景 沙盒技术 Xcode 中的 StoreKit 测试功能 测试影响价格等级和语言区的不同商店 是 有限。(无价格等级) 清除购买历史记录 否 是 测试订阅升级、降级、跨级和取消自动续订 是 是 重置推介促销优惠的资格条件 是 是 引入强制 StoreKit 错误来进行测试 否 是 加快或减慢时间流速以测试订阅续期 否 是 测试常见的 StoreKit 场景 所有支持 App 内购买项目的 App 都需要支持恢复购买项目,向客户展示 App 内购买项目,以及处理基本的交易。下表列出了常见的测试场景,以及它们是不是能够在沙盒或 Xcode 中进行测试。 测试场景 沙盒技术 Xcode 中的 StoreKit 测试功能 恢复购买项目 是 是 调用 finishTransaction(_:) (英文) 是 是 购买消耗型或非消耗型 App 内购买项目 是 是 再次购买非消耗型购买项目,以进行重复测试 否 是 购买自动续期订阅产品 是 是 购买非续期订阅产品 是 否 为 App 内购买项目退款 否 是 测试中断的购买 (客户必须在 App 外完成操作) 是 是 测试付款授权失败时未能成功完成的购买尝试 否 是 从 App Store Connect 检索配置的 App 内购买项目 是 否 (从 StoreKit 配置文件返回数据) 测试订阅和“购买前询问” 根据 App 提供的 App 内购买项目,你可能需要对涉及自动续期订阅、推介促销优惠和“购买前询问”的场景进行测试。下表列出了这些测试场景,以及它们是不是能够在沙盒或 Xcode 中进行测试。 测试场景 沙盒技术 Xcode 中的 StoreKit 测试功能 发起导致延迟状态的“购买前询问”交易 是 是 通过批准或拒绝来解决“购买前询问”交易 否 是 兑换自动续期订阅产品的推介促销优惠 是 是 兑换自动续期订阅产品的促销优惠 是 是 处理订阅续期 是 是 处理已取消或退款的订阅 否 是 回复客户的取消订阅和停用自动续期请求 是 是 响应已到期的订阅 是 是 处理订阅升级或降级 是 是 处理具有相同或不同订阅期的订阅跨级 是 是 有关更多信息,请参阅“通过‘购买前询问’请求和进行购买”。 |
CopyRight 2018-2019 实验室设备网 版权所有 |