• 快捷搜索
  • 全站搜索

ATM自动化测试工具的应用

2016-01-18 16:52:35作者:中国工商银行股份数据中心(北京) 于焘、周明编辑:金融咨询网
根据目前工商银行生产环境ATM的交易统计,在同类业务的交易量比较中,ATM渠道已经超过柜面渠道跃居第一位。与此同时,自助渠道交易种类的逐年攀升已经成为常态化。

随着自助机具的不断发展和人力成本的持续攀升,拓展自助服务渠道已经成为银行业未来发展的趋势。以工商银行为例,随着“大零售”战略的实施,自助机具的部署范围和使用规模都在不断扩大,自助服务渠道正逐步成为最重要的个人金融交易渠道。根据目前工商银行生产环境ATM的交易统计,在同类业务的交易量比较中,ATM渠道已经超过柜面渠道跃居第一位。与此同时,自助渠道交易种类的逐年攀升已经成为常态化。

        鉴于自助机具的服务范围广、交易总量大、用户体验要求高等特点,在敏捷开发、迭代开发正成为趋势的背景下,如何在测试阶段全面把控版本质量,确保新版本、新设备投产后运行稳定,做好服务保障工作,已经成为银行业面临的严峻挑战,特别是给传统模式的测试工作带来了前所未有的冲击。

一、现状分析

        自助机具的测试由于其特殊性面临着种种困难,主要表现在以下几方面。

        (1)自助机具的种类繁多。主要包括ATM、POS、传统自助终端机、快捷发卡机、排队叫号机等。

        (2)同类自助机具的型号多。首先,自助机具的生产厂商多,其中ATM厂商包括东信、0KI、日立、NCR、御银、德利多富等;自助终端厂商包括长城、南天等。其次,各厂商的设备型号也是多种多样,例如日立的ATM就有十几种。

        (3)自助机具支持的交易种类多。自助服务渠道支持丰富的业务种类,仅自助终端就涉及储蓄、基金、保险、理财等100多个交易分支。另外,不同账户、卡种之间存在排列组合,大大增加了全量交易覆盖测试的难度。

 

        传统的自助机具测试流程如图l所示。首先,测试人员设计测试案例。在案例基础上,准备交易数据,如账户信息、实物卡开立等。然后,对案例内容验证功能正确性。由于涉及交易要素较多,出现问题影响较大,还需要对关键要素进行精准核对,如主机余额、通知消息、交易明细、积分变化、手续费、初笔更新等。

        为了尽可能模拟实际的业务场景,测试人员将标准案例进行排列组合,最终形成的执行案例多达几千个。这在金融行业日新月异的发展的今天,几乎成为了不可能完成的任务。因此,在实际的测试执行过程中,测试人员不得不抽取具有代表性的账户、交易进行典型性验证,确保主要功能、交易、账户处理正确。这就产生了两大弊端:一是测试过程全部是由测试人员手工完成的,测试结果核对的效率低,正确性难以得到保障;二是难以覆盖全量业务场景,存在风险隐患。

二、提出创新

        为了解决上述问题,数据中心(北京)测试团队大胆创新,自主研发了针对ATM的自动化测试工具。该工具能够提升测试效率、释放人力资源、提高测试准确度,主要特点如下。

        (1)采用B/S架构开发,无需破坏正常的测试环境,控制了外部引入风险;

        (2)采用模拟上送端机报文的方式,全面覆盖交易数据流的各环节;

        (3)以测试卡库、全量案例场景为基础,自动生成执行案例,并提供主机、平台等多渠道的自动要素核对功能;

        (4)测试结果自动保存,具有可追溯性,便于各个版本之间结果比对。

三、设计思路及工作模块

        1.设计思路

        (1)针对自助设备测试搭建测试卡库、编写标准案例库,有效保障松散的测试数据得以复用。测试卡库和标准案例库做到最大程度的复用,避免了重复的案例设计、卡片申请工作,将测试数据精确管理。

        (2)根据标准案例库和测试卡库,工具可自动生成可执行案例,减轻测试人员案例编写工作量。形成的可执行案例包括了边界值、特殊值等内容。

        (3)提供主机、平台等多个渠道的要素核对功能,测试质量大幅提高。基于可执行案例的内容,自动在测试环境进行要素核对,并将核对结果入库记录。

        2.工具模块

        工具主体分为四个部分:数据准备模块、手工执行模块、自动执行模块、结果核对模块。

        (1)数据准备模块

        数据准备模块负责测试数据的准备工作,主要由测试卡库、标准案例库组织,实现实施案例自动生成功能。

        在数据准备阶段,测试人员首先需要将测试用卡的信息录入测试卡库。然后,测试人员将编制好的标准案例录入标准案例库。标准案例指的是不依赖于具体测试数据的案例,如“在ATM,由灵通卡向信用卡转账%m%元”,其中%m%为变量,生成实施案例时由工具自动赋值。

        (2)手工执行模块

        手工执行测试案例时,工具会根据标准案例和测试卡库数据生成待执行的实施案例。生成的实施案例拥有唯一编号,案例内容将根据业务规则赋予边界值、特殊值等内容,测试人员只需按照屏幕提示的信息完成案例内容的执行,如ATM转账交易。

        (3)自动执行模块

        自动执行测试案例时,将会自动生成对应的LoadRunner脚本,在服务器发起测试,并将测试结果返回。

        (4)结果核对模块

        由于实施案例的相关数据由工具自动生成,因此无论是手工执行还是自动执行,实施过测试案例后,均可以通过结果核对模块对主机和开放平台数据进行核对。

        以ATM转账为例,n类卡种之间互相转账,需要手工测试案例n2个,使用自动化脚本可大幅提高测试效率,并且针对某些测试环境无法完成制卡的卡种可以起到补充作用。在交易批量完成后,自动核对测试结果,大幅提高测试结果准确度:该工具针对自助渠道需要核对交易要素多的特点,采用自动化方式直接从主机或开发平台数据库中获取核心要素进行结果比对,能够大幅提高交易结果核对效率和准确性,自助设备测试案例覆盖更全面。ATM自动化测试工具提供基于LoadRunner的自动化测试解决方案,将大量重复的测试工作自动完成,并且能够有效地补充人工测试过程中测试环境资源不足的困难,有效提高测试质量和测试效率。

四、应用情况

        在版本测试初期使用该工具对较重要、较繁琐的存量业务案例场景进行覆盖。通过使用该工具可以释放人力资源,使更多的资源投入到版本新增功能的测试中,对项目的里程碑进度起到了保障作用,也一定程度上提升了员工的积极性和工作绩效。对于版本初期发现的存量问题、功能问题也便于在开发早期及时解决,为后续回归测试带来了充分的时间,对项目质量起到了保障作用。

        在版本投产前使用该工具进行例行测试或回归测试,效果也很明显。这个阶段的测试人员往往有大量的项目交接工作以及补丁的回归验证工作,容易出现案例疏漏或关键要素漏核对等情况,加之自助设备测试流程长,环节多,往往牵一发而动全身,端机、综合前置、主机在投产前的任何一个补丁都有可能需要自助渠道对所有交易进行通过性覆盖,在最后一个补丁日后,仅凭人力投入无法确保所有案例组合均被覆盖,使用自动化工具可以大幅解决这个问题,该工具能够较怏地进行案例批量执行,同时对于一些关键要素进行核对,并且版本末期通过自动化工具的使用可以较快地进行案例场景覆盖,提升核对准确性。

五、效果对比

        1.资源与效率情况

        自助设备测试因为其特殊性,需要测试的场景异常多。以ATM转账交易为例,需要验证21个卡种共441个案例。在一年8个版本测试周期中,未使用自动化工具前,每期版本涉及例行化测试就需要6个工作日;使用该工具后,可实现自动交易录放、交易结果核对等功能,平均每期版本节省5个工作日。推广期问,每期版本平均使用40余次。

        人力资源节约量为40次×5天×8个版本/240(一年按240个工作日计算)=6.67人/年。

        2.工作效率

        未使用ATM自动化工具前,每期版本例行化测试至少需要6个工作日;使用自动化工具后,仅需要1个工作日。

        原来的工作效率=1/6,现在的工作效率=1/l,效率提升为(1/l—l/6)/(1/6)=500%。

        3.单案例对比

        完成在实物端机的一笔实际转账案例大约需要30秒,测试人员再通过主机金额余额变化比对,使用不同柜面交易进行检查积分更新、通知消息、交易明细等基本信息核对,完成一个案例需要300秒,而使用自动化工具完成上述交易只需要5秒,效果是非常显著的。

六、未来拓展空间和展望

        虽然推广情况显示,该自动化工具在很大程度上提高了测试工作的效率,但是依然存在一定的提高空问。

        首先,目前该工具虽然可以覆盖综合前置服务器和主机的处理场景,但是无法模拟端机版本发生变化的场景,类似端机对返回码处理的结果、页面展现是否正确等还无法覆盖。根据这类问题,该工具后续还可以再进行拓展,例如,将卡种、案例的思路整合至端机模拟器,将卡磁提前写入,通过工具由端机批量发起交易,通过综合前置上送主机,在端机侧按照标准的端机处理结果加入逻辑判断,对于端机处理错误或不符合端机要求展现的页面等差错通过工具自动发送至端机处理错误清单中。

        其次,对于ATM业务本身,端机交易只是一部分,对于ATM运营管理、ATM监控平台等业务内容暂时还无法做到自动化覆盖。对于其他业务渠道,例如有上百种业务功能的自助终端,开发自动化的成本和方式难度将进一步加大,核对的要素会带来自动化处理过程中的各种错误和效率问题。

        笔者相信,随着服务理念的逐步提升和创新思维的不断推出,自助设备自动化测试工具将不断完善,切实有力地保障生产运行。

(文章来源:《中国金融电脑》杂志)

扫码即可手机
阅读转发此文

本文评论

相关文章