iOS自动续费沙盒环境测试

近期工作中涉及iOS的自动续费,趟了很多坑,也耗费很多时间,在此记录下,欢迎后来者借鉴。

1、ios的自动续费和安卓(除华为外)的自动续费后端逻辑一样吗?

答:不一样,安卓的自动续费是由后端控制发起每月的扣款,但iOS是订阅自动续费的商品后,每月由苹果发起扣费,再通知后端,从而进行一系列业务执行。PS:华为的自动续费与iOS相同,由华为自己发起。

2、苹果沙盒环境的自动续费订阅如何测试?

实际订阅有效期      Sandbox测试有效期
1 周                         3 分钟
1 个月                      5 分钟
2 个月                     10 分钟
3 个月                     15 分钟
6 个月                     30 分钟
1 年                         1 小时

 

简单来讲,假设项目创建的商品是按月扣费的自动续费商品,则测试人员使用沙盒账号开通该自动续费商品后,每隔5min苹果会自动发起下次扣费,模拟下月的扣费情况,此时可以查看业务商品的到期时间是否延长等。

PS:一般情况下是每隔5min则扣款一次,假设用户中途有取消订阅,且当前同一商品自动扣费未超过5次,再次使用该沙盒账号订阅后,存在大于5min后执行下次扣费的可能,请QA人员耐心等待下~假设10min后依然未扣款,存在苹果扣费成功但暂未给后端发通知的可能和后端收到通知并未处理业务的可能。

3、沙盒环境中,自动续订订阅会发生几次?

答:准确来讲,一个续费商品对应的一个沙盒账号,会在开通后扣费6次。假设当前已扣款2次,测试人员手动取消了订阅,则下次使用该沙盒账号再次开通该续费商品,依然会自动执行剩余的4次扣款。(此处的扣款不是真实付费)

PS:若当前公司创建了ABCD四个自动续费商品,则同一个沙盒账号拥有4×6=24次自动扣费的机会

4、项目创建的商品曾经开通过自动续费,在App外有再次开通的可能性吗?

答:有,App外(ios 14以上的系统)在手机 设置 - App Store - 沙盒账号 - 弹出“管理” ,进入到沙箱订阅过的商品服务页,在此处可以重新订阅该续费商品,所以QA同学不要忘记此处的测试Case

 

 

一丢丢忠告~

QA同学在测试自动续费时,

1、建议测试时间多要点;

2、建议建多个沙盒账号,比如十九八个;

3、测试过程中若遇到苹果服务不稳定的情况,就自求多福吧(比如11月3号,俺就遇到了苹果服务全面挂掉的凄惨情景……

 

 

 

新一波,说一个被苹果折腾的死去活来的事儿

我司的连续包月商品上线后打算更新成有首月优惠的商品,在测试环境下发现商品升级后,会导致已购买普通连续包月商品(每月都是一个价格)的用户,取消订阅后购买页展示的是次月价格,但实际扣费是首月优惠的价格。

于是,产品和开发一致决定为了与呼起的首月优惠价格同步,买过普通连续包月商品的用户(只要没有享受过首月优惠商品购买)的购买页展示首月优惠价位,经历了一波开发+测试,上线了。

谁知道!!上线后这类用户实际扣费呼起的支付价格又变成次月价格了!!!测试环境说好了首月价格呢!!你们咋各玩各的啊???

于是,我们再次打算让这类用户的购买页与呼起价格保持同步,技术小哥哥小姐姐们又是一通忙活后部署到测试环境,然鹅测试的时候发现……购买过普通连续包月的用户,在商品升级为首月优惠后,呼起的价格也是次月价格了,与正式环境同步了!!!MD,那之前测了那么多次呼起的首月价格是闹呢???

所以……

发生了什么……

我是谁我在哪……

 

 

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
iOS和安卓的沙盒是用来保护应用程序数据的安全性的一种机制。它们的主要区别如下: 1. 安全性:iOS沙盒机制相对安卓更加严格。iOS要求应用程序在自己的沙盒内运行,限制了应用之间的直接访问和交互。而安卓的沙盒机制相对较弱,应用程序可以更容易地访问和共享数据。 2. 文件系统结构:iOS沙盒机制将每个应用程序的文件分隔为多个目录,包括应用程序包、文档目录、缓存目录等。每个目录只能由特定的应用程序进行访问和写入。而安卓的沙盒机制通常是基于应用的用户ID,并且应用程序可以自由地向沙盒中的文件系统写入和访问。 3. 权限管理:iOS沙盒机制通过权限管理来限制应用程序对系统资源的访问。应用程序需要在安装时声明所需的访问权限,并由用户在使用时授予。而安卓的沙盒机制在应用程序安装时会一次性获取所有权限,并且用户只能在软件设置中进行修改。 4. 应用程序的更新:iOS沙盒机制要求每个应用程序都在单独的容器中运行,因此应用程序的更新通常是通过替换整个应用程序包来完成的。而安卓的沙盒机制允许应用程序在更新时只替换其中的部分文件,从而减少下载和更新时间。 综上所述,iOS和安卓的沙盒机制在安全性、文件系统结构、权限管理和应用程序更新方面存在一些差异。iOS沙盒机制相对更严格,保护了应用程序和用户数据的安全性,但也可能限制了应用程序之间的交互。而安卓的沙盒机制相对较弱,允许应用程序更自由地访问和共享数据,但也可能增加了安全隐患。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值