支付功能测试思路

支付:

支付功能在大多数软件中凡是有交易的平台都会涉及到,目前大多数都是涉及到第三方平台接口的调用,如微信接口、支付宝接口、各大银行的接口。因此,本文利用生成订单的方式,来实现对支付接口的调用以及测试点的分析,当然支付页面形式均大同小异,就按实际情况进行分析。

  • 支付流程里面就涉及到了第三方支付接口:

    •  下单接口:商户提交下单请求到第三方支付接口,第三方支付收单成功后返回下单成功结果给到商户系统。(下单接口的最终处理结果分为下单成功和下单失败,若未收到明确结果可调用单笔订单查询接口查询结果。)

    •  支付接口:调用该接口时指定支付参数,完成买家账户向商户账户的支付,采用页面跳转交互模式和后台通知交互模式。(结果分为两路返回:一路为前台在 return_url 页面跳转显示支付结果;一路为后台在 notify_url 收到支付结果通知后进行响应。)

    •  退款接口:调用第三方支付的支付请求接口返回付款成功后,在需要做退款处理时调用退款请求接口发起退款处理。(退款接口的最终处理结果分为退款成功和退款失败,若未收到明确结果可调用退款查询接口查 询结果。)

    •  单笔订单查询接口:根据订单号查询单笔订单信息和状态。退款订单查询接口:调用第三方支付的退款接口返回后,在需要查询退款请求状态可调用退款订单查询接口查询退款订单的状态和订单信息。

  • 测试过程中需要注意的主要测试点及异常场景:

    •  首先要保证接口都能正常调用;

    •  生成一笔订单,支付完成后,同步或异步重复回调,只有一次有效;  生成一笔订单,复制订单号和金额,再次生成一笔订单,用 fiddler 设置断点,用第一笔已完成的订单号和 订单金额去替换现有的订单号和金额,无法完成支付;  生成一笔订单,跳转到第三方时修改金额,无法到账,或者如果是游戏充值游戏币的话,到账为篡改后的 金额对应的游戏币;

    •  异步通知屏蔽,同步有效,进行支付,同步能够正常到账;  同步设置无效,异步有效,进行支付,异步能够正常到账;

    •  同步异步都设置无效,在第三方支付完成后,在重发机制时间范围内,设置异步有效,到下次通知时间点时,能够正常通知到账(补单机制的验证,如果商户收到第三方支付成功的通知后,要告知第三方支付收到了成功的通知,如果第三方支付收到商户应答不是 ok 或超时,第三方支付就会认为通知失败,会在规定的时间内持续调用 notify_url,一般有时间或次数的限制);

    •  针对支付订单在数据库中存储是否完整和正确进行校验(比如:第三方订单号--方便与第三方对账和问题 排查、订单金额、订单状态等);

  • 如果是用户购买实物商品,用户发起退货,要保证退货流程正常,资金能正常返还,要考虑下并发情况的验证以确保安全性;

    •  如果是用户购买虚拟商品,比如话费、油卡之类的商品,只有在发货失败的时候才能发起退货,注意验证;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值