支付是互联网,APP最常用, 最重要的功能, 跟支付相关的测试用例也非常多。
阅读目录
支付的流程
功能测试
1.从买家选择支付方式开始,选择网上银行或者信用卡支付,一直到支付结束,这个过程要考虑到哪些测试点?
卡与帐号一致与否,帐号与验证码一致与否,扣款金额与应付金额是否一致,扣款帐号与应扣款帐号是否一致等等
2.支付宝充值功能测试用例设计?
假设一种通过银行卡充值的场景 可以写几条
1),通过网银充值10元(标题) 然后请自己描述详细操作步骤
预期结果 支付宝帐户中增加10元(前提是不考虑网络延时,或各网银的出帐延时)
2,)通过网银充值时 网银余额不足
预期结果 充值失败 不影响支付宝中帐户金额
3,)通过网银充值时,在任意操作步骤中(建议是最后一步)取消该服务
预期结果 充值失败 不影响支付宝中帐户金额
4,)充入0元 (基本上不会同意充0的操作的吧)
预期结果 充值失败 提示输入大于0的金额
5),充入n元(N= 支付宝每次限制的最大充值金额)
预期结果 支付宝帐户中增加n元
6 )充入N+1元 (与第5条一样,都是边界值法。但是要分开写成两条)
预期结果 充值失败/提示金额大出限制
3.如何进行银联支付测试?
主要是功能方面要正确,涉及到金钱,都要测试小心了,不能有任何计算的错误。
然后,考虑一些异常情况,比如:比如银联那边没有及时返回付款成功或失败的结果,该怎么办;
银联接口调用不成功,该如何处理。。
另外,可以考虑下安全测试方面,支付请求的伪造、金额的篡改、恶意模拟银联来调用你们的接口……
支付流程:
1:正常的发起一笔流量充值请求,检查点:
1)用户发过去的信息有携带key值
2)商户系统本地数据会留存一份用户的订单信息,并且会根据每笔订单信息生成一笔支付信息(同时留存到本地)
3)第三方支付成功,第三方有存支付订单信息
4)充值成功,用户的流量余额有对应增加
异常用例
1、修改用户发过去的数据:
1)产品ID 与价值不对等---->检查点:篡改数据和key,检查商户系统报错:key值不对或者是用户数据有误。
2)取消充值流量
3)重复发起流量充值请求
2、商户系统-第三方之间:
1)密钥搞错-第三方报错,不接收密钥
2)提交商户系统里面不存在的订单/支付订单->第三方这里也是不能通过请求
3)篡改用户支付金额-->第三方也要检查
3、第三方--用户之间:
1)支付密码错误/余额不足
2)取消支付
3)重复支付[对账--->处理退款]
退款流程
正常的用例:
1.用户发起退款--->该用户的订单以及支付订单号都要存在。---检查点:商户系统/第三方检查数据没有问题,可以退款成功--->交易状态改成退款
异常用例:
1:无故发起退款:提交不存在的订单号或者支付订单号 --->订单号不存在/支付订单号不存在
2:信息不匹配发起退款:提交订单号与支付订单号不匹配的数据--->订单号/支付订单号有误
3:退款大于实际金额:提交的退款金额大于实际支付订单的金额-->商户系统要报错
4:商户系统这里发过去的请求:退款金额大于实际支付金额-->第三方要报错