CN107102947A - Atm交易流程测试装置及方法 - Google Patents
Atm交易流程测试装置及方法 Download PDFInfo
- Publication number
- CN107102947A CN107102947A CN201710332521.0A CN201710332521A CN107102947A CN 107102947 A CN107102947 A CN 107102947A CN 201710332521 A CN201710332521 A CN 201710332521A CN 107102947 A CN107102947 A CN 107102947A
- Authority
- CN
- China
- Prior art keywords
- transaction
- atm
- test
- unit
- test data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3696—Methods or tools to render software testable
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F19/00—Complete banking systems; Coded card-freed arrangements adapted for dispensing or receiving monies or the like and posting such transactions to existing accounts, e.g. automatic teller machines
- G07F19/20—Automatic teller machines [ATMs]
- G07F19/211—Software architecture within ATMs or in relation to the ATM network
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种ATM交易流程测试装置及方法,该ATM交易流程测试装置包括:模拟操作装置,用于配置交易测试数据,生成包括交易测试数据的交易数据文件;在ATM交易页面窗口中交易列表上模拟点击按键操作;应用装置,用于识别交易数据文件;在识别到交易数据文件后,根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;根据交易数据文件中的交易测试数据和所述点击按键操作,向被测试系统发送交易处理请求;接收被测试系统返回的交易处理结果。本发明可以提高ATM交易流程测试的测试效率,保证测试正确性,并覆盖全量业务场景,避免风险隐患。
Description
技术领域
本发明涉及ATM测试技术领域,尤其涉及ATM交易流程测试装置及方法。
背景技术
目前,业界进行ATM(Automatic Teller Machine,自动取款机)版本交易全流程测试主要通过手工发送交易的方式,为了尽可能模拟实际的业务场景,测试人员将标准案例进行排列组合,最终形成大量案例。因此,实际测试执行过程中,测试人员只得抽取具有代表性的账户、交易进行典型性验证,确保主要功能、交易账户处理正确。这样的测试模式的测试效率低,正确性难以保证。并且,难以覆盖全量业务场景,存在风险隐患。
具体的,在当前行业环境,传统的ATM版本测试工作面临有以下难题:
1、ATM厂商及端机型号多。行业内采购的ATM厂商及型号数量繁多,直接导致ATM版本的适用性测试工作量增加。
2、ATM端机发起同类型交易量大。不同账户、卡种之间存在排列组合。以ATM转账为例,N类卡种之间互相转账,需要完成N2次重复测试。
3、传统ATM交易全流程测试过程主要由手工发起交易的方式完成。以现有ATM转账交易为例,需要验证借记卡、信用卡等21个卡种共441个案例。在一年8个版本测试周期中,每期版本涉及测试至少需要6个工作日。这种方式效率低且耗费人力和时间。
4、版本迭代速度提升,测试时间有限。在敏捷开发、迭代开发正成为趋势的背景下,将ATM版本质量在测试阶段进行全面把控,确保新版、新设备投产后运行稳定、保障服务,成为严峻的挑战。
目前测试工作中主要的自动化测试工具主要有两类,一种是ATM端机报文模拟器,它可以模拟ATM发出ISO8583报文,经综合前置、网关,到达主机;另一种是综合前置报文模拟器模拟综合前置发送报文,并直接发送到网关再送达主机。这两种测试自动化工具都无法满足交易全流程的测试需求,也无法替代从ATM端机手工发送交易的传统测试方式。
发明内容
为了提高ATM交易流程测试的测试效率,保证测试正确性,并覆盖全量业务场景,避免风险隐患,本发明实施例提供如下解决方案:
本发明实施例提供一种ATM交易流程测试装置,该ATM交易流程测试装置包括:
模拟操作装置,用于配置交易测试数据,生成包括交易测试数据的交易数据文件;在ATM交易页面窗口中交易列表上模拟点击按键操作;
应用装置,用于识别交易数据文件;在识别到交易数据文件后,根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;根据交易数据文件中的交易测试数据和所述点击按键操作,向被测试系统发送交易处理请求;接收被测试系统返回的交易处理结果。
本发明实施例还提供一种ATM交易流程测试方法,该ATM交易流程测试方法包括:
配置交易测试数据,生成包括交易测试数据的交易数据文件;
识别交易数据文件;在识别到交易数据文件后,根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;
在ATM交易页面窗口中交易列表上模拟点击按键操作;
根据交易数据文件中的交易测试数据和所述点击按键操作,向被测试系统发送交易处理请求;
接收被测试系统返回的交易处理结果。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述ATM交易流程测试方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述ATM交易流程测试方法的计算机程序。
在本发明实施例中,在ATM交易页面窗口中交易列表上模拟点击按键操作,可以替代从ATM端机手工发送交易的传统测试方式,实现自动化的ATM交易流程测试,提高ATM交易流程测试的测试效率,保证测试正确性;并且,配置交易测试数据,生成包括交易测试数据的交易数据文件,根据交易数据文件中的交易测试数据在ATM交易页面窗口展现交易列表,根据交易数据文件中的交易测试数据和在交易列表上模拟的点击按键操作,向被测试系统发送交易处理请求,可以满足交易全流程的测试需求,覆盖全量业务场景,避免风险隐患。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中传统ATM交易流程测试方式的示意图;
图2为本发明实施例中ATM交易流程测试装置的测试方式示意图;
图3为本发明实施例中ATM交易流程测试装置的结构示意图;
图4为本发明实施例中模拟操作装置的结构示意图;
图5为本发明实施例中脚本案例单元配置的交易测试数据的示例图;
图6为本发明实施例中按键脚本单元的结构示例图;
图7为本发明实施例中交易脚本单元的结构示例图;
图8为本发明实施例中统计单元所记录的交易处理结果的示例图;
图9为本发明实施例中应用装置的结构示例图;
图10为本发明实施例中应用ATM交易流程测试装置实现的测试流程图;
图11为本发明实施例中ATM交易流程测试方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
在本发明的实施例中,提出了一种ATM交易流程测试装置,以减少ATM交易流程测试过程中的工作量,实现提升效率、释放人力资源和时间的效果。
本发明实施例的ATM交易流程测试装置,是根据配置的交易测试数据,驱动ATM端机进行交易流程测试,代替测试人员在ATM进行交易操作,对被测试系统发送真实的交易处理请求,从而达到了从ATM发起交易,将交易请求报文发送至被测试系统的交易全流程测试功能。
下面通过与传统测试方式的对比,对本发明实施例的ATM交易流程测试装置进行详细说明。
图1为传统ATM交易流程测试方式的示意图。如图1所示,测试人员通过全人工的方式进行测试工作。测试人员需要先准备需要验证的全部卡种的实物卡,然后在ATM端机前手工实施测试,逐笔发送交易并记录交易结果,最后再对交易结果进行核对,验证功能正确性。
图2为本发明实施例中ATM交易流程测试装置的测试方式示意图。如图2所示,测试人员无须准备实物卡,只需配置交易测试数据,如准备卡片数据,按照既定格式填写交易案例表,然后本发明实施例的ATM交易流程测试装置启动交易流程,自动操作ATM逐笔完成交易案例表中配置的交易案例。待交易案例表中案例全部执行完成,测试人员核对结果记录表中的交易记录。
图3为本发明实施例中ATM交易流程测试装置的结构示意图。如图3所示,本发明实施例的ATM交易流程测试装置包括模拟操作装置100和应用装置200,其中:
模拟操作装置100,用于配置交易测试数据,生成包括交易测试数据的交易数据文件;在ATM交易页面窗口中交易列表上模拟点击按键操作;
应用装置200,用于识别交易数据文件;在识别到交易数据文件后,根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;根据交易数据文件中的交易测试数据和所述点击按键操作,向被测试系统发送交易处理请求;接收被测试系统返回的交易处理结果。
在实施例中,模拟操作装置100可以在执行测试任务的ATM端机系统中运行程序实现,它可以替代人工在ATM点击交易按钮的操作动作和生成交易数据文件。模拟操作装置100可以以执行脚本的方式实现其功能。例如,执行模拟操作装置100中的交易脚本,会提取配置后的交易测试数据如测试案例元素信息,循环生成各笔交易的交易数据文件,以供应用装置200发现。通过模拟操作装置100实施在ATM进行按键操作,在交易完成后记录交易结果。
在实施例中,应用装置200可以运行在模拟操作装置100所运行的ATM端机系统中,它可以采用WEB技术、面向对象技术,根据行业通用结构的ATMC程序改造而成,适用在Windows图形化界面操作系统。对于ATMC程序的改造涉及对插卡、输密接口和数字键盘录入接口部分,对其本身结构和功能未修改,从而保证交易流程测试的完整性、可比性、测试参考价值,也保证了程序原有的通用性和标准型。应用装置200可以提供ATMC原有的所有交易服务功能,通过改造增加识别特定交易数据文件并提取其中交易测试数据的功能。应用装置200运行中,当在指定目录中发现模拟操作装置100生成的交易数据文件后,会发起交易流程。通过模拟操作装置100完成点击按钮操作并在ATM交易页面窗口获取交易数据文件中的交易测试数据执行交易流程。然后通过应用装置200将交易测试数据转换为交易请求报文,如ISO8583报文,通过指定hostIP和Port端口发送至被测试系统,待交易处理结束后,被测试系统会从原路返回交易处理结果。
具体实施时,为了提高本发明实施例的ATM交易流程测试装置的通用性,该ATM交易流程测试装置可以基于WINDOWS开放式系统体系结构和已有的ATM应用版本改造。为了提高易用性,模拟操作装置100可以采用交易案例与脚本分离的模式。为了实现模拟插卡和模拟录入密码的需求,通过保留读卡器读卡获取磁道信息和操作密码键盘进行输入密码的测试方式的同时,增加通过交易脚本导入交易案例中的卡磁信息和密码信息直接录入到ATM交易页面窗口中并通过按键脚本操作ATM端机执行交易流程,向被测试系统发送交易请求报文。
图4为本发明实施例中模拟操作装置100的结构示意图。如图4所示,模拟操作装置100可以包括脚本案例单元101、按键脚本单元102、交易脚本单元103和统计单元104。模拟操作装置100可以根据用户配置后的交易测试数据,执行对应的交易脚本,循环执行在ATM端机生成交易数据文件的操作。模拟操作装置100还可以用于替代用户手工在ATM完成在触屏交易界面的点击按键操作。
在具体的实施例中,脚本案例单元101用于配置交易测试数据,交易测试数据包括至少一个测试案例,每一测试案例对应一笔交易,测试案例中的元素对应交易的要素。
图5为本发明实施例中脚本案例单元101配置的交易测试数据的示例图,如图5所示,本例中交易测量试数据可以是被交易脚本单元103调用元素对象的Excel文件,其中每一行数据组合形成一个测试案例,案例中的元素对应每一笔交易的要素,要素内容例如可以包括:案例序号、交易类型、交易名称、场景名称、案例名称、卡种、卡号、二磁、对方卡号/帐号、密码、交易金额等交易要素。测试人员可以自由分配交易测试数据组合和场景。
在实施例中,按键脚本单元102用于识别ATM交易页面窗口,在ATM交易页面窗口中交易列表上模拟点击按键操作。
按键脚本单元102可以是一个适用于GUI界面的AutoitScript脚本,输出为一个“.exe”可执行文件,并可以被交易脚本单元103调用。按键脚本单元102可以模拟ATM窗口按键点击动作,实现按照不同的交易,对端机进行按照交易流程的点击操作。按键脚本单元102可以识别ATM交易页面窗口,对窗口中定义过的交易按钮完成例如鼠标点击按钮的操作。
图6为本发明实施例中按键脚本单元102的结构示例图。如图6所示,按键脚本单元102可以包括页面遍历单元1021、元素检索单元1022和交易操作单元1023,其中:
页面遍历单元1021用于识别ATM交易页面窗口。实施例中,页面遍历单元1021可以发现系统中出现的窗口并获取其窗口句柄,通过检索当前页面是否为所指定的页面窗口,并将检索结果送至元素检索单元1022。
元素检索单元1022用于检索ATM交易页面窗口中交易列表上的按键元素。实施例中,页面遍历单元1021如果判断为是,则元素检索单元1022检索当前页面的按键元素,还可以对检索到的按键元素进行编号并记录,以供交易操作单元1024调用。
交易操作单元1023用于发起在ATM交易页面窗口中对交易列表上按键元素的模拟点击操作。
实施例中,在页面遍历单元1021和元素检索单元1022遍历到指定页面和按键元素后,交易操作单元1023就可以发起在指定页面进行鼠标点击按键元素的模拟操作,并可以对每一次成功或失败的动作执行结果进行记录和截图,将记录和截图地址存至交易文件生成单元1032生成的交易结果文件。按照同类型交易的操作顺序,可以对按键进行单次鼠标点击动作的排序,以此模仿人工点击按键操作。交易操作单元1023可以包括设置不同交易类型的按键点击操作顺序。交易操作单元1023可以通过窗口句柄的对应,以及脚本案例单元101中的配置来选取,可由交易脚本单元103直接调用执行。
再如图6所示,在一个实施例中,按键脚本单元102还可以包括:脚本处理单元1024,用于对页面遍历单元1021、元素检索单元1022和交易操作单元1023的运行异常状态进行处理,将处理结果反馈至统计单元104。实施例中,脚本处理单元1024可以在页面遍历单元1021、元素检索单元1022或交易操作单元1023的脚本运行发生错误后,对当前脚本进行重试、等待、退出等处理,并在脚本结束后返回脚本异常的结果至统计单元104。
交易脚本单元103用于根据交易测试数据生成各笔交易的交易数据文件。交易脚本单元103可以循环生成交易数据文件和调用按键脚本单元102。
图7为本发明实施例中交易脚本单元103的结构示例图,如图7所示,本例中交易脚本单元103可以包括流程控制单元1031、交易文件生成单元1032和监听单元1033。其中:
流程控制单元1031,用于接收测试人员发出的测试启动指令,从脚本案例单元101获取交易测试数据,将交易测试数据提供给交易文件生成单元1032;触发按键脚本单元102运行。
在具体的实施例中,流程控制单元1031可以由测试人员通过用户操作装置交互执行,作为触发整个ATM交易流程测试的发起操作。当流程控制单元1031执行,会以脚本案例单元101中“案例序号”为标识,提取标识所在行的单笔交易测试数据,并通过自定义函数赋值的方法使交易文件生成单元1032生成单笔交易数据文件,同时会触发执行交易脚本案例单元101中指定的交易操作单元1023。当单次按键模拟点击操作结束,流程控制单元1031会收到监听单元1033返回的交易和截图结果,然后删除本次脚本流程生成的交易数据文件和交易结果文件。因为“案例序号”是大于等于1的字符串数组,所以在首次执行脚本后,流程控制单元1031将逐次递增的循环调用下一行交易测试数据,并触发整个交易流程直至“案例序号”为空,则中止执行。
交易文件生成单元1032,用于根据交易测试数据生成各笔交易的交易数据文件;根据交易处理结果生成交易结果文件。
在具体的实施例中,交易文件生成单元1032可以将流程控制单元1031提供的单笔交易测试数据,形成一个可以由应用装置200识别的(例如命名为CardInfoSIM.ini)交易数据文件,以及形成记录交易处理结果的交易结果文件如XML文件,将交易数据文件和交易结果文件存放在ATM端机的指定目录。交易测试数据例如可以包括卡磁信息和交易信息,其中卡磁信息中包含TestCaseNo(交易序号)、Track2(卡二磁)、Track3(卡三磁)和PINBlock(密码);而交易信息包含TransactionType(交易种类)、Amount(金额)、TfrAccount(对方卡号/账号)、TfrMobilePhoneNumber(对方卡号手机号)等交易相关信息。交易结果文件中例如可以包括交易脚本案例表中的信息以及对应的交易执行结果,包括执行结果、主机返回码、结果描述、截图链接、脚本执行结果等。
监听单元1033,用于从应用装置200获得交易处理结果,将交易处理结果提供给交易文件生成单元1032和统计单元103。
在具体的实施例中,监听单元1033可以提供整个交易脚本单元103的日志和返回结果收集。按键脚本单元102和交易脚本单元103的运行日志和返回结果也可以由监听单元1033存至交易结果文件,并提供给流程控制单元1031做处理,最后写入统计单元103。
再如图7所示,在一个实施例中,交易脚本单元103还可以包括:按键脚本控制单元1034,用于对按键脚本单元102的运行过程进行控制。举一例,按键脚本控制单元1031可以在交易操作单元1023执行结束后,根据其返回给监听单元1033的运行结果,退出对当前进程的按键脚本单元102的调用。例如脚本的正常退出、上一个脚本还未运行完成强制退出、找不到的页面或元素退出等关于按键脚本单元102运行后不同情况的处理动作,从而保证后续按键脚本单元102循环调用的正常环境。
统计单元103用于统计记录各笔交易的交易处理结果。图8为本发明实施例中统计单元103所记录的交易处理结果的示例图。如图8所示,本例中,统计单元103所记录的交易处理结果为:记录每一次交易执行完成后输出结果的Excel文件。模拟操作装置100收集到监听单元1033的交易返回码都会记录在这里。测试人员可以通过统计单元103核对每笔交易的运行结果。
图9为本发明实施例中应用装置200的结构示例图,如图9所示,本例中,应用装置200可以包括:
卡会话模块201,用于识别交易数据文件;
客户界面流程模块202,用于根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;
交易模块203,用于获取交易数据文件中的交易测试数据,根据点击按键操作将交易测试数据提供给交易处理模块204;将交易处理结果提供给模拟操作装置100;实施例中,交易模块203负责ATM提供的所有交易具体流程控制以及交易测试数据获取。如:在客户或交易操作单元1023点击交易按键,会激活相应的交易模块203,该交易模块203会在需要获取交易测试数据(例如:对方卡号、交易金额等信息)时,调用客户界面流程模块202展现并提示客户在数字键盘录入信息。通过改造,在需要数字键盘录入交易数据步骤时,如存在交易数据文件,则通过直接获取文件中相应的交易信息。然后在收集到完整的交易信息后调用交易处理模块204;
交易处理模块204,用于将交易测试数据转换为交易请求报文,将交易请求报文提供给报文处理模块205;接收交易结果报文,解析交易结果报文,获得交易处理结果,将交易处理结果反馈给交易模块203;在实施例中,交易处理模块204在接收到交易模块203的调用指令后,会将发起报文处理模块205处理请求,同时将交易测试数据转换为ISO8583报文格式,发送至报文处理模块205。在接收到报文处理模块205返回的交易结果报文后,会解析返回报文并通过返回值检索对应表中的处理动作标识,并将结果和标识反馈给交易模块203;
报文处理模块205,用于将交易请求报文发送至被测试系统;接收被测试系统返回的交易结果报文,将交易结果报文转发给交易处理模块204。实施例中,报文处理模块205在收到报文处理请求并收到交易报文后,会将报文发送至被测试系统;并在接收到被测试系统答复后转发至交易处理模块204。
再如图9所示,在一个实施例中,应用装置200还可以包括:卡服务模块206和账户管理模块207;
卡会话模块201进一步用于在识别到交易数据文件后,将交易数据文件中交易测试数据包含的卡磁信息提供给卡服务模块206;
卡服务模块206,用于根据卡磁信息确定卡片分类信息,将卡片分类信息提供给账户管理模块207;
账户管理模块207,用于根据卡片分类信息确定卡支持的交易,将卡支持的交易标识提供给客户界面流程模块202;
客户界面流程模块202进一步用于根据卡支持的交易标识,在ATM交易页面窗口展现交易列表。
在具体的实施例中,卡会话模块201负责ATM交易的发起和关闭,原有功能为:当接收到读卡器吸入卡片并发出的卡磁信息,会发起交易会话调用卡服务模块206。本发明实施例经过对卡会话模块201的改造,在卡会话模块201中接收卡磁信息的字段前增加判断语句:如在指定路径下发现交易数据文件(例如命名为CardInfoSIM.ini)即调用卡服务模块206发起交易会话;并且取消调用客户界面流程模块202进入等待输入密码步骤,而是直接将交易数据文件中卡磁信息和密码缺省字段指向该文件内的卡二磁和密码信息。从而实现不插实物卡,通过交易数据文件发起ATM交易,并且跳过手动录入密码操作。
客户界面流程模块202负责在交易环节中页面展示的元素调用和展现。比如:在客户完成插卡和输入密码或者卡会话模块201识别到交易数据文件之后,根据账户管理模块207报送的该卡支持的交易标识,为客户提供可用交易列表,并在ATM屏幕展示。按键脚本单元102中的页面遍历单元1021完成按键元素检索后,交易操作单元1023方可执行。
卡服务模块206在接收到卡会话模块201发送卡磁信息后,会根据卡号在应用装置200中卡表文档索引对应的卡片分类信息,并将结果发送给账户管理模块207。
账户管理模块207在接收到卡服务模块206发送的卡片分类信息后,会在内置的表中找到该卡支持的交易,并将结果标识发送至客户界面流程模块202。
图10为本发明实施例中应用ATM交易流程测试装置实现的测试流程图,其步骤如下:
步骤S1:脚本案例单元101接收交易测试数据,填写案例表。
步骤S2:运行流程控制单元1031启动测试。流程控制单元1031调用交易文件生成单元1032,生成包含脚本案例单元101中序号1所在行数据的交易数据文件和交易结果文件。
步骤S3:应用装置200的卡会话模块201识别到交易数据文件,并调用卡服务模块206查询该卡片类型,然后将查询结果传递至账户管理模块207查找该卡种可提供的交易,最后发送结果给客户界面流程模块202。
步骤S4:客户界面流程模块202接收到结果后,会生成会话界面,并提供相应交易的按键入口。
步骤S5:流程控制单元1031生成交易数据文件后,会根据脚本案例单元101中录入的交易名称,运行对应的交易操作单元1023。
步骤S6:交易操作单元1023启动后,会调用页面遍历单元1021,查找当前的交易页面是否为交易选择界面。如果是,则调用元素检索单元1022,识别出当前界面的按键元素。
步骤S7:按键识别完成,交易操作单元1023完成点击按钮的操作,选择相应交易。
步骤S8:点击进入启动相应交易后,交易模块203启动并调用客户界面流程模块202显示录入交易信息界面。
步骤S9:此时,交易模块203会在交易数据文件查中找到对应位置数据并提取。
步骤S10:获取到交易测试数据后,交易操作单元1023会再次调用页面遍历单元1021,查找后续交易按钮。
步骤S11:按键识别完成,交易操作单元1023完成后续交易点击按键操作。
步骤S12:交易模块203完成交易步骤后,调用交易处理模块204执行交易处理动作。交易处理模块204会触发报文处理模块205并将报文整理后由报文处理模块205发送至被测试系统。
步骤S13:在收到交易处理结果的返回信息后,此笔交易结束。
步骤S14:按键脚本单元102的交易操作单元1023运行完成。
步骤S15:监听单元1033收到按键脚本单元102和交易脚本单元103和交易返回结果,存至交易结果文件最后写入统计单元103,并结束按键脚本单元102进程。
步骤S16:流程控制单元1031调用交易文件生成单元1032,生成包含脚本案例单元101中序号2所在行数据的交易数据文件和交易结果文件,并循环全部流程,直至脚本案例单元101中序号为空。
步骤S17:在模拟操作装置100运行中,如果按键脚本单元102发生报错及交易异常脚本处理单元1024会将报错结果发送至监听单元1033,由监听单元1033存至交易结果文件,并提供给按键脚本控制单元1034和流程控制单元1031做中止脚本处理。最后直接执行下一条案例。
基于同一发明构思,本发明实施例中还提供了一种ATM交易流程测试方法,如下面的实施例所述。由于该方法解决问题的原理与ATM交易流程测试装置相似,因此该方法的实施可以参见ATM交易流程测试装置的实施,重复之处不再赘述。
图11为本发明实施例中ATM交易流程测试方法的流程图,如图11所示,该方法可以包括:
步骤1101、配置交易测试数据,生成包括交易测试数据的交易数据文件;
步骤1102、识别交易数据文件;在识别到交易数据文件后,根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;
步骤1103、在ATM交易页面窗口中交易列表上模拟点击按键操作;
步骤1104、根据交易数据文件中的交易测试数据和所述点击按键操作,向被测试系统发送交易处理请求;
步骤1105、接收被测试系统返回的交易处理结果。
在一个实施例中,所述配置交易测试数据,生成包括交易测试数据的交易数据文件,包括:
配置交易测试数据,所述交易测试数据包括至少一个测试案例,每一测试案例对应一笔交易,测试案例中的元素对应交易的要素;根据交易测试数据生成各笔交易的交易数据文件。
在一个实施例中,所述在ATM交易页面窗口中交易列表上模拟点击按键操作,包括:
识别ATM交易页面窗口;
检索ATM交易页面窗口中交易列表上的按键元素;
发起在ATM交易页面窗口中对交易列表上按键元素的模拟点击操作。
在一个实施例中,所述根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表,包括:
获得交易数据文件中交易测试数据包含的卡磁信息;
根据卡磁信息确定卡片分类信息;
根据卡片分类信息确定卡支持的交易标识;
根据卡支持的交易标识,在ATM交易页面窗口展现交易列表。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述ATM交易流程测试方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述ATM交易流程测试方法的计算机程序。
综上所述,在本发明实施例中,在ATM交易页面窗口中交易列表上模拟点击按键操作,可以替代从ATM端机手工发送交易的传统测试方式,实现自动化的ATM交易流程测试,提高ATM交易流程测试的测试效率,保证测试正确性;并且,配置交易测试数据,生成包括交易测试数据的交易数据文件,根据交易数据文件中的交易测试数据在ATM交易页面窗口展现交易列表,根据交易数据文件中的交易测试数据和在交易列表上模拟的点击按键操作,向被测试系统发送交易处理请求,可以满足交易全流程的测试需求,覆盖全量业务场景,避免风险隐患。
在本发明实施例中,提供了ATM全流程测试方式,可以让端机向被测试系统实际发出交易报文,而不是模拟ATM发送报文。这种方式可以使每一笔交易都能贯穿整个交易系统。
在实施例中,本发明实施例的ATM交易流程测试方式可以采用通用的结构。对于行业内不同品牌的ATM设备,凡使用WINDOWS开放式系统体系结构、符合人行规范的ATM设备均可使用本装置结构。
在实施例中,本发明实施例的ATM交易流程测试方式可以自由分配交易场景,从而做到不同交易不同场景的覆盖,有效提高交易覆盖率,降低由于覆盖率低而产生的风险。
本发明实施例可以自动完成测试,交易自动化测试相比传统测试方式,降低信息录入的时间,并且提高交易准确性,能大量节省人力资源和测试时间。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种ATM交易流程测试装置,其特征在于,包括:
模拟操作装置,用于配置交易测试数据,生成包括交易测试数据的交易数据文件;在ATM交易页面窗口中交易列表上模拟点击按键操作;
应用装置,用于识别交易数据文件;在识别到交易数据文件后,根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;根据交易数据文件中的交易测试数据和所述点击按键操作,向被测试系统发送交易处理请求;接收被测试系统返回的交易处理结果。
2.如权利要求1所述的ATM交易流程测试装置,其特征在于,所述模拟操作装置包括:
脚本案例单元,用于配置交易测试数据,所述交易测试数据包括至少一个测试案例,每一测试案例对应一笔交易,测试案例中的元素对应交易的要素;
按键脚本单元,用于识别ATM交易页面窗口,在ATM交易页面窗口中交易列表上模拟点击按键操作;
交易脚本单元,用于根据交易测试数据生成各笔交易的交易数据文件;
统计单元,用于统计记录各笔交易的交易处理结果。
3.如权利要求2所述的ATM交易流程测试装置,其特征在于,所述按键脚本单元包括:
页面遍历单元,用于识别ATM交易页面窗口;
元素检索单元,用于检索ATM交易页面窗口中交易列表上的按键元素;
交易操作单元,用于发起在ATM交易页面窗口中对交易列表上按键元素的模拟点击操作。
4.如权利要求3所述的ATM交易流程测试装置,其特征在于,所述按键脚本单元还包括:
脚本处理单元,用于对所述页面遍历单元、元素检索单元和交易操作单元的运行异常状态进行处理,将处理结果反馈至所述统计单元。
5.如权利要求2所述的ATM交易流程测试装置,其特征在于,所述交易脚本单元包括:
流程控制单元,用于接收测试人员发出的测试启动指令,从所述脚本案例单元获取交易测试数据,将交易测试数据提供给交易文件生成单元;触发所述按键脚本单元运行;
所述交易文件生成单元,用于根据交易测试数据生成各笔交易的交易数据文件;根据交易处理结果生成交易结果文件;
监听单元,用于从所述应用装置获得交易处理结果,将交易处理结果提供给所述交易文件生成单元和所述统计单元。
6.如权利要求5所述的ATM交易流程测试装置,其特征在于,所述交易脚本单元还包括:
按键脚本控制单元,用于对所述按键脚本单元的运行过程进行控制。
7.如权利要求1至6任一项所述的ATM交易流程测试装置,其特征在于,所述应用装置包括:
卡会话模块,用于识别交易数据文件;
客户界面流程模块,用于根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;
交易模块,用于获取交易数据文件中的交易测试数据,根据所述点击按键操作将交易测试数据提供给交易处理模块;将交易处理结果提供给所述模拟操作装置;
交易处理模块,用于将交易测试数据转换为交易请求报文,将交易请求报文提供给报文处理模块;接收交易结果报文,解析交易结果报文,获得交易处理结果,将交易处理结果反馈给交易模块;
报文处理模块,用于将交易请求报文发送至被测试系统;接收被测试系统返回的交易结果报文,将交易结果报文转发给交易处理模块。
8.如权利要求7所述的ATM交易流程测试装置,其特征在于,所述应用装置还包括:
卡服务模块和账户管理模块;
所述卡会话模块进一步用于在识别到交易数据文件后,将交易数据文件中交易测试数据包含的卡磁信息提供给卡服务模块;
所述卡服务模块,用于根据卡磁信息确定卡片分类信息,将卡片分类信息提供给账户管理模块;
所述账户管理模块,用于根据卡片分类信息确定卡支持的交易,将卡支持的交易标识提供给客户界面流程模块;
所述客户界面流程模块进一步用于根据卡支持的交易标识,在ATM交易页面窗口展现交易列表。
9.一种ATM交易流程测试方法,其特征在于,包括:
配置交易测试数据,生成包括交易测试数据的交易数据文件;
识别交易数据文件;在识别到交易数据文件后,根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表;
在ATM交易页面窗口中交易列表上模拟点击按键操作;
根据交易数据文件中的交易测试数据和所述点击按键操作,向被测试系统发送交易处理请求;
接收被测试系统返回的交易处理结果。
10.如权利要求9所述的ATM交易流程测试方法,其特征在于,所述配置交易测试数据,生成包括交易测试数据的交易数据文件,包括:
配置交易测试数据,所述交易测试数据包括至少一个测试案例,每一测试案例对应一笔交易,测试案例中的元素对应交易的要素;根据交易测试数据生成各笔交易的交易数据文件。
11.如权利要求9所述的ATM交易流程测试方法,其特征在于,所述在ATM交易页面窗口中交易列表上模拟点击按键操作,包括:
识别ATM交易页面窗口;
检索ATM交易页面窗口中交易列表上的按键元素;
发起在ATM交易页面窗口中对交易列表上按键元素的模拟点击操作。
12.如权利要求9所述的ATM交易流程测试方法,其特征在于,所述根据交易数据文件中的交易测试数据,在ATM交易页面窗口展现交易列表,包括:
获得交易数据文件中交易测试数据包含的卡磁信息;
根据卡磁信息确定卡片分类信息;
根据卡片分类信息确定卡支持的交易标识;
根据卡支持的交易标识,在ATM交易页面窗口展现交易列表。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求9至12任一所述方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求9至12任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710332521.0A CN107102947B (zh) | 2017-05-12 | 2017-05-12 | Atm交易流程测试装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710332521.0A CN107102947B (zh) | 2017-05-12 | 2017-05-12 | Atm交易流程测试装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107102947A true CN107102947A (zh) | 2017-08-29 |
CN107102947B CN107102947B (zh) | 2020-08-04 |
Family
ID=59669719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710332521.0A Active CN107102947B (zh) | 2017-05-12 | 2017-05-12 | Atm交易流程测试装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107102947B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108572916A (zh) * | 2018-03-22 | 2018-09-25 | 平安科技(深圳)有限公司 | 基于Jmeter的压力测试方法、装置、设备及存储介质 |
CN109447733A (zh) * | 2018-09-25 | 2019-03-08 | 深圳壹账通智能科技有限公司 | 交易系统的交易验证方法、装置和存储介质 |
CN109670803A (zh) * | 2018-10-25 | 2019-04-23 | 深圳壹账通智能科技有限公司 | 线上交易前测试的方法、装置、介质及电子设备 |
CN110380936A (zh) * | 2019-07-23 | 2019-10-25 | 中国工商银行股份有限公司 | 测试方法和装置 |
CN110377522A (zh) * | 2019-07-22 | 2019-10-25 | 中国工商银行股份有限公司 | 交易场景的测试方法、装置、计算设备以及介质 |
CN110399305A (zh) * | 2019-07-31 | 2019-11-01 | 中国工商银行股份有限公司 | Btt模块的测试方法及装置 |
CN111627171A (zh) * | 2020-04-28 | 2020-09-04 | 深圳壹账通智能科技有限公司 | Atmp系统的测试报文转换方法、装置、设备及介质 |
CN111639022A (zh) * | 2020-05-16 | 2020-09-08 | 中信银行股份有限公司 | 交易测试方法及装置、存储介质、电子装置 |
CN113010416A (zh) * | 2021-02-26 | 2021-06-22 | 中国工商银行股份有限公司 | 银行柜面交易自动化测试方法及装置 |
CN113781718A (zh) * | 2021-09-14 | 2021-12-10 | 中国银行股份有限公司 | Atm机测试方法及装置、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493793A (zh) * | 2009-02-19 | 2009-07-29 | 深圳市紫金支点技术股份有限公司 | 一种atm测试方法及装置 |
CN103514092A (zh) * | 2012-06-29 | 2014-01-15 | 日立(中国)研究开发有限公司 | Atm机软件系统自动测试方法 |
CN104038605A (zh) * | 2014-06-04 | 2014-09-10 | 福建升腾资讯有限公司 | 电话pos支付终端交易测试的方法 |
-
2017
- 2017-05-12 CN CN201710332521.0A patent/CN107102947B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493793A (zh) * | 2009-02-19 | 2009-07-29 | 深圳市紫金支点技术股份有限公司 | 一种atm测试方法及装置 |
CN103514092A (zh) * | 2012-06-29 | 2014-01-15 | 日立(中国)研究开发有限公司 | Atm机软件系统自动测试方法 |
CN104038605A (zh) * | 2014-06-04 | 2014-09-10 | 福建升腾资讯有限公司 | 电话pos支付终端交易测试的方法 |
Non-Patent Citations (1)
Title |
---|
于焘等: "ATM自动化测试工具的应用", 《中国金融电脑》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108572916A (zh) * | 2018-03-22 | 2018-09-25 | 平安科技(深圳)有限公司 | 基于Jmeter的压力测试方法、装置、设备及存储介质 |
CN109447733A (zh) * | 2018-09-25 | 2019-03-08 | 深圳壹账通智能科技有限公司 | 交易系统的交易验证方法、装置和存储介质 |
CN109670803A (zh) * | 2018-10-25 | 2019-04-23 | 深圳壹账通智能科技有限公司 | 线上交易前测试的方法、装置、介质及电子设备 |
CN110377522B (zh) * | 2019-07-22 | 2023-10-03 | 中国工商银行股份有限公司 | 交易场景的测试方法、装置、计算设备以及介质 |
CN110377522A (zh) * | 2019-07-22 | 2019-10-25 | 中国工商银行股份有限公司 | 交易场景的测试方法、装置、计算设备以及介质 |
CN110380936A (zh) * | 2019-07-23 | 2019-10-25 | 中国工商银行股份有限公司 | 测试方法和装置 |
CN110380936B (zh) * | 2019-07-23 | 2021-05-14 | 中国工商银行股份有限公司 | 测试方法和装置 |
CN110399305A (zh) * | 2019-07-31 | 2019-11-01 | 中国工商银行股份有限公司 | Btt模块的测试方法及装置 |
CN110399305B (zh) * | 2019-07-31 | 2023-12-08 | 中国工商银行股份有限公司 | Btt模块的测试方法及装置 |
CN111627171A (zh) * | 2020-04-28 | 2020-09-04 | 深圳壹账通智能科技有限公司 | Atmp系统的测试报文转换方法、装置、设备及介质 |
CN111639022B (zh) * | 2020-05-16 | 2023-06-06 | 中信银行股份有限公司 | 交易测试方法及装置、存储介质、电子装置 |
CN111639022A (zh) * | 2020-05-16 | 2020-09-08 | 中信银行股份有限公司 | 交易测试方法及装置、存储介质、电子装置 |
CN113010416A (zh) * | 2021-02-26 | 2021-06-22 | 中国工商银行股份有限公司 | 银行柜面交易自动化测试方法及装置 |
CN113781718A (zh) * | 2021-09-14 | 2021-12-10 | 中国银行股份有限公司 | Atm机测试方法及装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107102947B (zh) | 2020-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107102947A (zh) | Atm交易流程测试装置及方法 | |
CN107341109B (zh) | 一种测试数据的生成方法和系统 | |
CN104427627B (zh) | 测试数据获取方法、客户端与服务器 | |
US6934945B1 (en) | Method and apparatus for controlling communications | |
CN105069926A (zh) | 一种柜面业务自助化实现方法 | |
CZ20031172A3 (cs) | Systém a způsob poskytování monitorování množiny finančních obslužných terminálů s dokumentově ovládaným rozhraním | |
CN110414960A (zh) | 一种支付处理方法及装置 | |
US11334473B2 (en) | Electronic product testing systems | |
CZ20031173A3 (cs) | Systém a způsob poskytování bezpečnosti pro finanční obslužné terminály s dokumentově ovládaným rozhraním | |
CN104036386B (zh) | 一种基于虚拟平台的pos机可信交易系统及方法 | |
CN106815148A (zh) | 一种交易测试方法及装置 | |
CN110377522A (zh) | 交易场景的测试方法、装置、计算设备以及介质 | |
CN109255480A (zh) | 间佣率预测方法、装置、计算机设备及存储介质 | |
CN105828319B (zh) | 一种更换客户识别模块卡的方法及装置 | |
CN110363556A (zh) | 确定用户问题的方法、服务器、客户端及系统 | |
CN112559320B (zh) | 测试数据构造方法及装置 | |
CN111464350B (zh) | 一种管理异构品牌网络设备的方法及系统 | |
CN113537915B (zh) | 项目评测系统、方法及存储介质 | |
CN110210842A (zh) | 资源转移方法、系统、装置、存储介质和计算机设备 | |
JP2020515938A (ja) | 支払い方法、支払い装置、支払いシステムおよび販売端末 | |
AU2009295352B2 (en) | User interface | |
CN107547614A (zh) | 投资平台的数值处理方法和装置 | |
CN106649233A (zh) | 移动设备的自定义表单处理方法及系统 | |
US7472355B2 (en) | Computer-implemented method for managing commands for a terminal session | |
CN108763066A (zh) | 一种词槽设计的自然语言测试脚本编辑方法及测试机器人 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |