支付测试过吗?
作者:互联网
一般支付都是和第三方支付进行对接的,比如:支付宝、微信、中国银联。 第三方接口:下单接口,支付接口,退款接口,查询接口
支付状态包括支付成功,支付失败,退款成功,退款失败,
1、支付流程:
付款的唯一标识是付款编号;
退款也会有退款编号
1.1 正常支付流程:
正常的发起一笔支付请求,检查点:
1)用户发过去的信息有携带key值
2)商户系统本地数据会留存一份用户的订单信息,并且会根据每笔订单信息生成一笔支付信息(同时留存到本地)
3)第三方支付成功,第三方有存支付订单信息
4)付款成功或失败,订单状态都会改变
1.2 异常用例:
用户 1、修改用户发过去的数据:
1)产品ID与价值不对等---->检查点:篡改数据和key,检查商户系统报错:key值不对或者是用户数据有误。
2)取消支付
3)重复发起支付请求
商户和第三方 2、商户系统-第三方之间:
1)密钥搞错-第三方报错,不接收密钥
2)提交商户系统里面不存在的订单/支付订单->第三方这里也是不能通过请求
3)篡改用户支付金额–>第三方也要检查
用户和第三方 3、第三方–用户之间:
1)支付密码错误/余额不足
2)取消支付
3)重复支付[对账—>处理退款]
2、退款流程
2.1 正常用例
用户发起退款—>该用户的订单以及支付订单号都要存在。—检查点:商户系统/第三方检查数据没有问题,可以退款成功—>交易状态改成退款
2.2 异常用例
1:无故发起退款:提交不存在的订单号或者支付订单号 —>订单号不存在/支付订单号不存在
2:信息不匹配发起退款:提交订单号与支付订单号不匹配的数据—>订单号/支付订单号有误
3:退款大于实际金额:提交的退款金额大于实际支付订单的金额–>商户系统要报错
4:商户系统这里发过去的请求:退款金额大于实际支付金额–>第三方要报错
3、bug
支付流程bug 第三方如果一直不返回(订单状态取决于支付返回状态)ps:与下边BUG描述重复
支付的异常bug 第三方一直未返回支付状态,当时没有对这种场景做判断,程序报错
解决办法 我们的后端加了一种支付中/退款的状态,当第三方一直不返回支付状态,这个订单的状态为支付中,显示在全部订单中 付款、退款、对账三种状态
标签:商户,订单号,订单,测试,支付,退款,第三方 来源: https://www.cnblogs.com/lmh2022/p/16105870.html