四、检测技术及方法
在本项目中,我们重点采用了场景法、边界值法进行系统功能测试,采用负载压力测试工具实现性能测试。
下面结合具体关键点测试案例,来分析本系统的测试方法。
1. 转账流程测试
常规情况下,支付系统为客户提供正常转账流程,但本系统对客户进行了细分,包括个人会员、电子协议商户、纸质协议商户,对不同类型的客户间转账设置了不同的处理规则,如表1所示。
▲表1 转账对应关系表
此外,还存在转出账户处于异常状态、转出账户余额不足、转入账户处于异常状态、转账金额超过交易限额、转账支付撤销等异常情况,如图2所示。
▲图2该系统转账流程
综合以上情况,整个转账过程包含很多事件,
将登录作为起始事件,登录后的不同操作会进一步触发不同的事件,这些事件在被触发时形成了不同的场景,因此我们可以采用场景法,将正常的转账过程作为基本流,将特殊情况和异常情况的处理过程作为备份流,根据确定的基本流和备份流形成不同场景并设计相应的测试用例,最后通过执行测试用例完成测试。
2. 退款流程测试
退款业务属于异常交易处理范畴,本系统提供的退款方式较多包括单笔退款、批量退款、多次退款、人工退款等,此外由于退款还涉及手续费返还,分成结算、查询统计等业务,退款流程较复杂,对于边界值处理的准确性得要求较高。因此,对于测试来讲,设计好的测试用例对于退款业务测试尤为重要。本次测试采用等价类法、边界值法相结合的方法,按照退款计算设计方案将其分类,分为自动退款和人工退款,然后再细分为单笔退款和批量退款,同时考虑单次退款金额略小于原交易额、单次退款金额等于原交易额、单次退款金额略超过原交易额、多次退款金额略小于原交易额、多次退款金额等于原交易额、多次退款金额略超过原交易额,分别设计测试用例,执行时还需重点查看手续费返还、分成结算、状态查询统计等的正确性。
3. 风险监控测试
风险监控测试重点验证系统对账户及交易风险防范的能力及相关管理制度。鉴于本系统具有独立的风控系统,在测试时主要采用系统验证、文档审核与访谈相结合,考核相关管理制度是否完善,并模拟钓鱼、套现、欺诈、大额交易、洗钱、盗用等不同类型的账户管理风险和风险交易,考核系统的风险防范及预警能力。
4. 性能测试
本系统性能测试包括并发测试、大数据量测试及系统自恢复能力测试。测试点较多,数据量大,需求指标要求较高,因此在测试前被检测机构尽量构建与真实环境相同配置、数据规模满足检测规范要求的压力测试环境。测试时采用了自动化性能测试工具,创建压力测试程序、构建压力测试模型,对被测试系统实施自动化压力测试,并对测试过程中系统各关注点进行监控,最后形成压力测试结果分析报告。
4. 安全测评
系统安全性检测针对系统安全不同层面的不同内容,主要采用访谈、现场检查、自动化工具测试、文档审核相结合的方法进行考查。针对本项目服务器等相关设备较多的特点,测试前充分了解系统部署情况,熟悉网络设备、网络架构以及网络安全产品策略、服务器策略、审计及日志管理方式、应用安全保护设施、数据加密及存储方式等,要求被测方准备好相关制度和文档,并针对不同考查点,制定相应详细的访谈表、检查表及测试表。
五、结束语
测试过程中发现了系统功能缺失、实现错误、风险管理制度不完善、安全设备不到位、文档与系统存在部分不一致等问题,经过整改和回归测试,系统已满足检测规范要求。