一、背景

  近年来,随着互联网应用服务的发展、尤其是电子商务的勃兴,我国的第三方支付产业进入了爆炸式增长时期。目前,第三方支付企业的年交易总额已突破万亿元,在人民银行备案的第三方支付企业数量已达260多家。第三方支付以其方便、快捷、无相关费用的特点,越来越受到人们的青睐,越来越多的网上交易采用第三方支付企业来完成支付结算。第三方支付方式已经融入到了人们的日常生活和工作中,正在改变着人们的消费习惯。

  然而,第三方支付企业虽然从事金融货币支付业务,但一直游离于金融监管体系之外,各企业间的信用、技术、资金实力等参差不齐,行业发展整体面临不确定性,尤其是大量沉淀资金带来的金融风险,以及欺诈、洗钱、套现、钓鱼、信息泄露、业务连续性差等带来的技术与安全风险,不仅严重影响了整个产业的形象和进一步发展,也影响了国家的金融稳定和人民财产安全。

  为了规范第三方支付服务,降低技术安全风险,维护资金财产安全,中国人民银行积极出台相关政策陆续发布了《非金融机构支付服务管理办法》、《非金融机构支付服务管理办法实施细则》,正式将第三方支付纳入国家统一监管,并实施准入制度,要求从事支付服务的非金融机构必须取得《支付业务许可证》,成为支付机构,才能开展支付业务。随后,人民银行又颁布了《非金融机构支付服务业务系统检测认证管理规定》进一步明确了支付业务系统检测要求。第三方权威检测机构中国软件评测中心积极参与非金融机构支付服务业务系统检测规范的制订,并成为央行指定的具有全业务检测资格的检测机构。

  本文涉及的支付系统是典型第三方支付系统,涉及测试业务类型为互联网支付系统检测。该系统为自主开发,根据《非金融机构支付服务业务系统检测规范(互联网支付部分)》的要求,该系统的检测内容包括功能、性能、风险监控、安全性、文档五部分。

  二、互联网支付业务系统特点

  该支付服务业务系统主要包括网站、交易系统、后台管理系统、商户管理系统、风险监控系统等,实现了客户管理、账户管理、交易处理、资金结算、对账处理、操作处理、统计报表、运行管理、风险控制等功能。其系统结构如图1所示。

▲图1典型互联网支付业务系统

  该支付服务业务系统具有以下特点:

  (1) 业务流程复杂

  该系统为客户提供的服务形式丰富、方式多样,除常规的一般支付流程外,还提供很多衍生的支付流程,以及细化的账户管理内容。此外,流程中还融入交易分析和风险监控的控制措施,因此流程环节较多。

  (2) 性能测试点需求全面,数据量大

  该系统实际交易数据量大,在测试时要求的数据量也较大,系统性能需求较高。

  (3) 具有独立的风控系统

  该系统具有独立的风控系统,风控系统的测试需要单独进行。

  (4) 安全性要求较高

  非金融机构支付服务业务系统涉及资金交易,对安全性要求较高,央行在相关管理规定中要求第三方支付企业信息系统安全等级要达到信息安全等级保护三级的基本要求。

  (5) 系统庞大,设备较多

  该系统为全国性支付服务系统,系统部署较庞大,涉及的服务器、网络设备、安全设备较多。

  三、测试分析与准备

  针对以上特点,在测试项目实施前,我们重点做好了以下几项工作,确保项目实施顺利进行:

  (1)尽早熟悉系统,通过文档、系统介绍、实际操作等方式,使测试人员在进场前熟悉系统,理清复杂流程,明确检测内容,设计详细的测试用例,并适当增加测试人员,保障测试全面、细致。

  (2)提前准备测试环境和测试数据,设计性能测试场景,沟通测试方法,并要求被检测机构事先完成自测,保障系统质量。

  (3)提前熟悉风控系统实现流程,分析与功能之间的交叉关系,在测试时与功能配合。

  (4)就检测内容与被检测机构进行沟通,了解当前系统安全设计和部署情况,对于一些可能影响整个实施进度的情况,例如设备缺失等提前确认,尽早准备。

  (5)提前了解系统的部署情况,要求被检测机构提交详细的网络拓扑图,并确定好被测方熟悉系统部署的管理员。

  (7)由于本系统测试为标准符合性测试,测试依据以《非金融机构支付服务业务系统检测规范(互联网支付部分)》为主,因此,需要就检测内容与被检测机构进行沟通,使被检测机构对检测内容的理解没有偏差。

四、检测技术及方法

  在本项目中,我们重点采用了场景法、边界值法进行系统功能测试,采用负载压力测试工具实现性能测试。

  下面结合具体关键点测试案例,来分析本系统的测试方法。

  1. 转账流程测试

  常规情况下,支付系统为客户提供正常转账流程,但本系统对客户进行了细分,包括个人会员、电子协议商户、纸质协议商户,对不同类型的客户间转账设置了不同的处理规则,如表1所示。

▲表1 转账对应关系表

  此外,还存在转出账户处于异常状态、转出账户余额不足、转入账户处于异常状态、转账金额超过交易限额、转账支付撤销等异常情况,如图2所示。

▲图2该系统转账流程

  综合以上情况,整个转账过程包含很多事件,

  将登录作为起始事件,登录后的不同操作会进一步触发不同的事件,这些事件在被触发时形成了不同的场景,因此我们可以采用场景法,将正常的转账过程作为基本流,将特殊情况和异常情况的处理过程作为备份流,根据确定的基本流和备份流形成不同场景并设计相应的测试用例,最后通过执行测试用例完成测试。

  2. 退款流程测试

  退款业务属于异常交易处理范畴,本系统提供的退款方式较多包括单笔退款、批量退款、多次退款、人工退款等,此外由于退款还涉及手续费返还,分成结算、查询统计等业务,退款流程较复杂,对于边界值处理的准确性得要求较高。因此,对于测试来讲,设计好的测试用例对于退款业务测试尤为重要。本次测试采用等价类法、边界值法相结合的方法,按照退款计算设计方案将其分类,分为自动退款和人工退款,然后再细分为单笔退款和批量退款,同时考虑单次退款金额略小于原交易额、单次退款金额等于原交易额、单次退款金额略超过原交易额、多次退款金额略小于原交易额、多次退款金额等于原交易额、多次退款金额略超过原交易额,分别设计测试用例,执行时还需重点查看手续费返还、分成结算、状态查询统计等的正确性。

  3. 风险监控测试

  风险监控测试重点验证系统对账户及交易风险防范的能力及相关管理制度。鉴于本系统具有独立的风控系统,在测试时主要采用系统验证、文档审核与访谈相结合,考核相关管理制度是否完善,并模拟钓鱼、套现、欺诈、大额交易、洗钱、盗用等不同类型的账户管理风险和风险交易,考核系统的风险防范及预警能力。

  4. 性能测试

  本系统性能测试包括并发测试、大数据量测试及系统自恢复能力测试。测试点较多,数据量大,需求指标要求较高,因此在测试前被检测机构尽量构建与真实环境相同配置、数据规模满足检测规范要求的压力测试环境。测试时采用了自动化性能测试工具,创建压力测试程序、构建压力测试模型,对被测试系统实施自动化压力测试,并对测试过程中系统各关注点进行监控,最后形成压力测试结果分析报告。

  4. 安全测评

  系统安全性检测针对系统安全不同层面的不同内容,主要采用访谈、现场检查、自动化工具测试、文档审核相结合的方法进行考查。针对本项目服务器等相关设备较多的特点,测试前充分了解系统部署情况,熟悉网络设备、网络架构以及网络安全产品策略、服务器策略、审计及日志管理方式、应用安全保护设施、数据加密及存储方式等,要求被测方准备好相关制度和文档,并针对不同考查点,制定相应详细的访谈表、检查表及测试表。

  五、结束语

  测试过程中发现了系统功能缺失、实现错误、风险管理制度不完善、安全设备不到位、文档与系统存在部分不一致等问题,经过整改和回归测试,系统已满足检测规范要求。

转载:http://cio.it168.com/a2012/0227/1317/000001317119.shtml

第三方支付系统如何测试?案例分析相关推荐

  1. EMC设计与测试案例分析郑军奇第二版 296页电磁兼容EMC超强书籍

    EMC设计与测试案例分析郑军奇第二版 296页 20.0M 高清书签版.pdf 电磁兼容(EMC)标准解析与产品整改实用手册 WSQ 电磁兼容(EMC)设计与测试之汽车电子产品 [陈立辉 主编] 20 ...

  2. php第三方支付系统--支付流程--及代码

    目前来说,越来越多的行业互联网化,也掀起了互联网金融的浪潮,第三方支付的开发也越来越广泛,一般大型的第三方支付系统包括,前置系统,支付系统,渠道系统,账务系统,清结算系统,运营与维护管理平台.下面我们 ...

  3. 【软考系统架构设计师】2009年下系统架构师案例分析历年真题

    [软考系统架构设计师]2009年下系统架构师案例分析历年真题 2009年下系统架构师案例分析历年真题 [软考系统架构设计师]2009年下系统架构师案例分析历年真题 2009年系统架构师案例分析真题第一 ...

  4. 信用卡存危险盗刷暗门:利用第三方支付系统漏洞

    每张信用卡,都可以轻松盗刷,只要你懂得利用现行第三方支付系统中的一个小小的漏洞. 比如,只要打通了信用卡"离线支付"和"过卡支付"--两个原本并行无交集的系统, ...

  5. 软考高级-系统架构师-案例分析-案例题1

    软考高级-系统架构师-案例分析题1必做部分主要考点就是质量属性,架构风格,软件架构评估,非功能需求.除了2013年(ESB总线),2014年(设计模式和MVC)没有考以外基本上都涉及到了,下面是我总结 ...

  6. 第三方支付系统-支付流程

    为什么80%的码农都做不了架构师?>>>    目前来说,越来越多的行业互联网化,也掀起了互联网金融的浪潮,第三方支付的开发也越来越广泛,一般大型的第三方支付系统包括,前置系统,支付 ...

  7. 第三方支付系统--支付流程

    目前来说,越来越多的行业互联网化,也掀起了互联网金融的浪潮,第三方支付的开发也越来越广泛,一般大型的第三方支付系统包括,前置系统,支付系统,渠道系统,账务系统,清结算系统,运营与维护管理平台.下面我们 ...

  8. 2018最新支付系统/第三方支付系统/第四方支付系统/聚合支

    2018最新支付系统/第三方支付系统/第四方支付系统/聚合支这里写自定义目录标题 2018最新第三方API第四方支付平台程序源码完整开源全套完美运营版聚合支付平台源码,此平台源码是客户独家运营的版本, ...

  9. 中国第三方支付系统目前存在的问题

    中国网上零售市场规模进一步扩大,推动了中国第三方支付市场的发展. 目前,国内第三方支付平台具有良好的发展势头.已经创造了很多出色的表现,第三方支付接口但她仍然存在不容忽视的问题. 中国第三方支付系统的 ...

最新文章

  1. 基于Hadoop的58同城离线计算平台设计与实践
  2. 深度学习(五十六)tensorflow项目构建流程
  3. Windows 技术篇-cmd强制关闭端口、解除端口占用方法,cmd查询端口相关的进程pid并杀死进程实例演示
  4. [渝粤题库]西北工业大学电力系统自动装置
  5. matlab中创建一个工程,从文件夹创建新工程
  6. 【今日CV 视觉论文速览】22 Nov 2018
  7. 深度学习精度提升 3 个小妙招:模型集成、知识蒸馏、自蒸馏
  8. 零售业有效利用物联网的几种方法
  9. Android学习笔记(六)——CheckBox复选框
  10. 罗永浩“重新定义” 的 TNT 黄了?
  11. POJ1144 Network 连通性
  12. 关于eclipse adt更新的问题
  13. rtl 8111 linux 驱动,【驱动】在LINUX(ubuntu)系统下安装RTL8111/8168网卡驱动程序(技嘉H61主板)...
  14. 自然语言处理(NLP):08-05 TextCNN短文本分类案例分享
  15. 为什么分布电容会缩短信号的传输距离
  16. 限时活动|凭徽章领披萨大奖,玩转Moonbeam治理论坛
  17. 手游摇杆(二)八方向摇杆和移动范围限制
  18. codeforces 1139c Edgy Trees 【并查集 】
  19. 多媒体互动投影系统——虚拟翻书,让展示更生动
  20. 蓝桥杯 算法提高 我们的征途是星辰大海

热门文章

  1. Unity如何限制3D物体的旋转角度
  2. 使用win中excel打开linux下.csv文件乱码问题
  3. Vue打包后图片路径问题
  4. 蚂蚁能量助手v1.0下载App安卓
  5. 教给论文投稿小白们去投哪些靠谱的国际学术会议
  6. Linux学习-40-格式化分区mkfs、mke2fs命令用法
  7. qt 回车事件之Qt::Key_Return与Qt::Key_Enter
  8. python-比较两个文件交集、并集、差集
  9. 女孩被社会毒瘤恶意传播艾滋病!我用技术将其凶手绳之以法!
  10. gsm基于linux程序,基于嵌入式Linux下GSM模块的短信收发系统设计