app第三方支付测试点
1.支付安全:用Charles抓包尝试修改价格
2.正常支付流程:从下单到回调是否正常
3.支付过程:
- 输入正确/错误的密码
- 弱网/无网络时点击购买
- 输入正确的密码后,在第三方还没有返回支付成功的页面前,断网
- 付款的账号余额不足时,正好时,多余时
- 调起支付后,返回
- 输入密码时,网络异常
- 需要添加地址的订单要注意
4.不同状态的订单:
- 待支付状态:订单是否可以正常支付;是否可以取消
- 取消状态
- 支付成功
5.支付成功后:
- 授权是否正常
- 页面展示是否正常
- 是否可以正常退款
关于扫码支付:
- 同一个二维码,支付宝和微信同时扫码支付
- 同一个二维码,多个支付宝或者多个微信同时扫码支付
- 同一个二维码,2个用户同时扫,一个不支付,一个正常支付
- 同一个二维码,用户扫码后不支付,并且取消订单,之后再扫之前的二维码
- 同一个二维码,用户支付成功后,再次扫之前的码
关于自动订阅:
- 是否可以正常续费(检查是否扣钱,用户授权是否正常)
- 用户购买单月自动续费后,更改成按季度续费(检查是否扣钱,用户授权是否正常)
- 自动续费是否有短信提醒(扣钱之前和之后)
- 使用同一个苹果账号给不同的id续费
- 不同状态的用户都可正常续费(VIP,普通,过期)
- 掉单(补单功能)
- 测试自动续费商品,可能会导致沙盒账号有很多的掉单,每次打开app时都会去请求,可以使用Charles来finish这些请求用Charles来finish补单请求的方法
补充:
1.iOS的一种掉单情况
用户在app内调起支付后,没有绑定支付方式来付钱(就是没钱付款),iOS会提醒用户去绑定支付方式,用户点击去绑定支付跳出了app,在绑定完支付之后回到app内付款,然后就会出现掉单的情况
推荐一个keep的优化方案:http://tech.gotokeep.com/post/2018/12/in-app-purchase/
2.对于有首单优惠的商品要注意:
用户多次调起首单优惠的商品,生成了多笔待支付的优惠价格的订单,若用户在支付了首单后,对于之前待支付的订单,用户若是选择支付要注意价格是否恢复正常
3.iOS,若用户可以在游客状态下使用苹果支付,要注意用户购买后又使用账号登录了,是否需要将游客登录时购买的商品给登录的账号