如何对软件支付流程进行测试?才能更安全的买买买!

现在有不少测试朋友做的项目中,可能也会涉及到支付相关的功能。比如:做商城的,做游戏的以及其他在线交易的网站、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。

原文地址:https://www.cnblogs.com/rend/p/9379003.html

时间: 2024-10-10 07:17:04

如何对软件支付流程进行测试?才能更安全的买买买!的相关文章

【软件生命周期&&测试工作流程】软件生命周期和测试工作流程

******软件生命周期:********* ******测试工作流程:******** 原文地址:https://www.cnblogs.com/l-pan/p/12177740.html

软件开发流程选择

软件工程把这些相关的技术和过程统一到一个体系中,叫作"软件开发流程",软件开发流程的目的是为了提高软件开发.运营和维护的效率,以及提升用户满意度.软件可靠性和可维护性.        软件开发流程有:写了再改模式.瀑布模型.瀑布模型的各种变形.统 一流程.老板驱动的流程和渐进交付的流程.        在这些开发流程中,我比较支持瀑布模型的各种变形中的大瀑布带着小瀑布,这个对开发者的个人能力要求比较高,需要吧各个子系统统一到最后做系统测试,用户只有到最后才能看到结果,从一开始的需要一个

互联网产品接入支付功能如何测试?

互联网产品接入支付功能如何测试? 现在有不少测试朋友做的项目中,可能也会涉及到支付相关的功能.比如:做商城的,做游戏的以及其他在线交易的网站.APP等.如果支付出了问题,或者用户拿少的钱通过篡改请求数据购买大金额的商品,如果是实物的话,发货前还有可能被发现.如果是虚拟商品话费.游戏币等就有可能造成损失. 所以,不管是实物也好,虚拟商品也好,涉及到支付功能时,大家在测试的过程中一定要重视,否则,会造成很大损失.之前可能大家也都看到过或者听过一个bug损失4.6亿美金的惨痛教训或者身边也有发生过其他

互联网产品接入支付功能如何测试?__(支付功能网上搜集资料)

那么,问题来了,对于支付模块的相关测试,我们应该如何进行呢?比如,针对游戏来说,使用第三方支付往游戏充值游戏币功能,看起来是不是很简单,大家主要思考下以下内容: 1.支付都是与第三方支付(支付宝.微信.财付通.QQ钱包.短信支付等)进行对接,那么,是否了解了第三方接口有哪些?是否都能清楚我们的产品与第三方是如何交互的?是否能画出流程图? 2.异常场景有哪些? 3.有哪些风险,如何规避? 第三方支付的流程,与商户的对接方式基本相似,大同小异.(题外推荐:如下流程图使用的chrome插件:Gliff

软件开发流程

软件管理 1:指定详细的工作计划,把任务分下去. 2:分配任务的时候,验收时间点的确定. 人员 如何帮助开发人员有所进步提升 不要只站在自己的立场上要求开发什么时间点必须实现什么功能 软件开发 1:设计优先,把要做哪些东西,有什么要求都列出来,指定设计方案,评估设计方案是否可行 2:讨论设计方案,和测试,其他开发,项目经理等讨论方案是否有问题 3:编码 4:开发自己的测试,指定测试的案例,和分支,先通过自己这一关 5:测试人员测试,提出BUG,迭代设计,讨论,修改. 6:上线用户体验,提出问题,

易宝支付流程

1. 获取易宝的API 获取API的第一步,要在易宝上注册一个账号,这个账号是商家的账号,后面买家付款后,会将钱款存入该账号中,然后商家自己提取到银行卡,易宝在提取过程中收取一定的手续费.这就是易宝的盈利模式.但是注册成功需要前提,那就是自己得有一个网站,或者是一个公司,吧啦吧啦等东西,反正就是你得有资格申请,这点易宝会审核的,满足了才会允许你注册,才会给你提供他们的接口,不是所有人都可以注册的.我用的也是别人注册好的,我自己啥也没有……也没法注册……屌丝一个,大家懂的~但是一般在公司里开发的话

支付宝支付流程

支付宝支付流程 支付宝给的流程图还是很清晰的,其实基本流程就是 用户向服务器请求一个付款 服务器生成一个带签名的订单发送给客户端 客户端通过这个订单向app sdk请求付款 sdk把用户引入支付宝付款界面进行支付 支付成功后支付宝向前端返回支付成功结果,并且向服务器发送一个支付通知 服务器接收通知并且验证是否是支付宝发送的成功结果 app客户端需要做的很简单: 向自己的服务器请求一个订单, 接收到订单后,向支付宝sdk发情一个支付请求 交易结束后返回一个成功或者失败 服务器做的事情稍微多一点(注

QT开发(二十三)——软件开发流程

QT开发(二十三)--软件开发流程 一.软件开发流程简介 软件开发流程是通过一系列步骤保证软件产品的顺利完成,是软件产品在生命周期内的管理学. 软件开发流程的本质是软件开发流程与具体技术无关,是开发团队必须遵守开的规则. 二.常见软件开发流程模型 常见的软件开发流程模型包括即兴模型.瀑布模型.增量模型.螺旋模型.敏捷模型. 1.即兴模型 即兴模型的特点: A.与用户交流后立即进行开发 B.没有需求分析和需求发掘过程 C.没有整体设计和规划 D.没有软件文档,可维护性差 2.瀑布模型 瀑布模型的特

团队模式与软件开发流程的选择

1.团队模式的选择 软件团队的模式有主治医师模式.明星模式.社区模式.业余剧团模式.秘密团队.特工团队.交响乐模式.爵士乐模式.功能团队模式.官僚模式. 我比较倾向于交响乐模式和功能团队模式.交响乐模式的主要特点是门类齐全,各司其职,有共同方向的.其优点是在开发过程中分工明确,大家可以术业有专攻,效率比较高.缺点是适用于某歌软件领域处于稳定成长的阶段,如果是在刚开始的时候可能会产生分歧. 功能团队模式的主要特点是:人人平等,没有管理与被管理的关系.优点是小组间交流比较频繁,不同能力的人可以平等协