现在有不少测试朋友做的项目中,可能也会涉及到支付相关的功能。比如:做商城的,做游戏的以及其他在线交易的网站、APP等。如果支付出了问题,或者用户拿少的钱通过篡改请求数据购买大金额的商品,如果是实物的话,发货前还有可能被发现。如果是虚拟商品话费、游戏币等就有可能造成损失。

所以,不管是实物也好,虚拟商品也好,涉及到支付功能时,大家在测试的过程中一定要重视,否则,会造成很大损失。

前几天小伙伴在评论区留言问我:支付这一块如何进行测试?

那我们今天就来说说支付流程测试点,废话不多说,来进入我们今天的正题吧。

第一步基本测试

1、安全权限检测 

登录或不登录

2、 选择的支付方式

①网上银行(借记卡和信用卡)直接支付,网上账号支付(通过充值后再支付),第三方平台支付(支付宝,云网,快钱等);

②借记卡未开通网上银行有无提醒,每家银行的接口测试(国有四大银行、招行等其他及国外银行); 

③信用卡是否开通网上银行,有无当天支付限额;、 

④借记卡与信用卡是直接输入卡号、密码、验证码、卡上专用码,还是直接使用用户名和密码加动态密码支付; 

⑤ 直接支付考虑充值费用与所支付费用是否平衡,是否包含一定手续费; 

⑥系统帐号支付:将银行卡或第三方钱转到系统帐号进行支付,检测账户余额不足时是否提示;是否有当天限额;

⑦第三方平台支付,接口的测试;

⑧是否支持批量支付; 

⑨是否需要身份验证、手机短信提示,找他人代付功能;

3、收款功能  提现(转到银行卡或公司账户)功能

4、 账户管理

5、账单查询 

6、打印,传真,邮件提醒功能 

第二步异常情况

1、网络带宽问题 

2、无法正常充值,网上银行充值有问题,如银行服务器忙等

3、 并发用户多 

4、充值、支付成功,但数据未更新

第三步测试方法

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

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

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

4、安全性测试 

①URL有参数的手动修改参数,看是否得到其他用户的信息和相关页面;

② 在登录输入框的地方输入“or 1=1--”看是否有SQL注入

③在注重SQL注入的同时,一般在有输入框的地方输入

④输入的数据没有进行有效的控制和验证

⑤ 直接输入需要权限的页面地址可用访问

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

必须重视软件的安全性测试

用户购买100元游戏币时,前往第三方支付跳转进行金额的篡改由100元改成0.01元,结果就拿了0.01元充值了100元的游戏币。对订单金额没有做校验导致这样的后果,损失比较大。

大家在测试的过程中一定要注意对服务端进行校验,支付时数据的篡改一定要有校验。
当同步、异步通知都存在的情况的,异步通知(第三方支付成功后台通知),没有到账,导致部分用户充值不到账,引起客户投诉。当同步、异步并存的时候,一定要分别对同步和异步进行检验,确保都能正常到账。
我们所做的绝大多少的互联网产品都会涉及到第三方支付,所以支付功能必然是重要的,作为测试互联网产品的一员,我们必须要做好支付的安全性。

最后,如果我们志趣相投,你也对软件测试有着浓厚的兴趣,可以加我qq一起探讨学习 3394781259。