01_测试基础知识---支付系统的测试

一,基本测试

1)安全权限检测

登录或不登录

2)选择的支付方式

  1. 网上银行(借记卡和信用卡)直接支付,网上账户支付(通过充值后再支付),第三方平台支付(支付宝,云网,快钱等);
  2. 借记卡未开通网上银行有无提醒,每家银行的接口测试(国有四大银行,招行等其他及国外银行)
  3. 信用卡是否开通网上银行,有无当天支付限额;
  4. 借记卡与信用卡是直接输入卡号,密码,验证码,卡上专用码,还是直接使用用户名和密码加动态密码支付;
  5. 直接支付考虑充值费用与所支付费用是否平衡,是否包含一定手续费;
  6. 系统账户支付:将银行卡或第三方钱转到系统账户进行支付,检测账户余额不足时是否提示;是否有当天限额;
  7. 第三方平台支付,接口的测试
  8. 是否支持批量支付;
  9. 是否需要身份验证,手机短信提示,找他人代付功能;

3)收款功能

1,提现(转到银行卡或公司账户)功能

4)账户管理
5)账单查询
6)打印,传真,邮件提醒功能

二,异常情况

  1. 网络带宽问题
  2. 无法正常充值,网上银行充值有问题,如银行服务器忙等
  3. 并发用户多
  4. 充值,支付成功,但数据未更新

三,测试方法

1)流程图

画支付流程图,依据业务流程进行功能全覆盖测试

2)接口测试

对支付接口进行重点测试(因支付方式多样,所以选择性广)

3)功能测试

采用黑盒测试策略,使用等价类划分,边界值分析,因果图法,判定表法等测试用例设计方法的原理与实现,分别对支付系统的功能,
账户和交易风险监控,系统性能及安全性等测试指标项进行测试。黑盒测试法应制订覆盖全部功能模块的测试用例,
通过执行测试用例以实现系统功能,业务流程和其他质量特性的测试。

4)安全性测试

URL有参数的手动修改参数,看是否得到其他用户的信息和相关页面
在登录输入框的地方输入“or  1=1--”看是否有SQL注入
在注重SQL注入的同时,一般在有输入框的地方输入
输入的数据没有进行有效的控制和验证
直接输入需要权限的页面地址可用访问

5)性能测试

带负载情况下的响应时间和吞吐率,在某个时间段内同时访问系统的用户数量,或是在线数据处理的数量。

大概测试用例思路:

支付流程:
  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. 商户系统这里发过去的请求:退款金额大于实际支付金额–>第三方要报错

你可能感兴趣的:(功能测试)