CN101814217A - 一种测试自助设备的方法、装置以及系统 - Google Patents

一种测试自助设备的方法、装置以及系统 Download PDF

Info

Publication number
CN101814217A
CN101814217A CN200910204573A CN200910204573A CN101814217A CN 101814217 A CN101814217 A CN 101814217A CN 200910204573 A CN200910204573 A CN 200910204573A CN 200910204573 A CN200910204573 A CN 200910204573A CN 101814217 A CN101814217 A CN 101814217A
Authority
CN
China
Prior art keywords
single step
step order
test
result
test cases
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
Application number
CN200910204573A
Other languages
English (en)
Other versions
CN101814217B (zh
Inventor
傅强
郭敏鸿
陈光波
杨砥
袁国能
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN2009102045735A priority Critical patent/CN101814217B/zh
Publication of CN101814217A publication Critical patent/CN101814217A/zh
Application granted granted Critical
Publication of CN101814217B publication Critical patent/CN101814217B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明公开了一种测试自助设备的方法、装置以及系统。其中,所述方法包括:A、将从案例库中载入的测试案例解析为至少一条单步命令和与每条单步命令对应的预期结果;B、按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,获取所述自助设备响应与所述单步命令对应的机械操作后的执行结果,一次机械操作与一条单步命令相对应,并根据单步命令的执行结果和预期结果确定所述测试案例的测试结果。实施本发明提供的一种测试自助设备的方法、装置以及系统,通过调用机械手执行测试案例的测试过程,在整个测试案例的测试过程中实现了完全自动化,提高了测试过程中的测试结果的准确性和测试效率,缩短了测试周期。

Description

一种测试自助设备的方法、装置以及系统
技术领域
本发明涉及自动测试领域,具体而言,涉及一种测试自助设备的方法、装置以及系统。
背景技术
随着我国金融电子化建设的深入发展,银行自助设备在金融行业的应用越来越广泛,其在拉近客户与银行之间的距离,扩展营业网点,改善用卡环境,提供全天候、全方位的金融服务,降低经营成本,提高金融行业的服务质量和综合竞争力等方面发挥着不可替代的作用,成为人们生活中不可缺少的组成部分。随着银行自助服务设备的不断增多,品牌和机型的不断增加,对于这些自助设备进行的测试工作量急剧增多。
现有技术中,对于银行自助设备的测试工作主要依靠人工来进行,这样不仅耗费大量人力,占用大量时间,使得测试人员无法专注于新的测试工作,而且测试的效率和测试的覆盖率特别低,测试人员在测试过程中经常会由于疏忽而对测试结果的准确性造成影响。因此,迫切需要将测试自动化的技术应用到银行自助设备的测试工作中。目前软件测试自动化行业内用到的自动测试软件主要有美国的Mercury公司出品的软件自动化测试工具QuickTestProfessional(QTP)、美国IBM公司出品的软件测试工具RationalRobot、美国Borland公司出品的软件测试工具SilkTest。但是,由于上述三种自动测试软件针对性比较明显,只能够运用到有限的领域。银行自助设备的自动测试由于涉及到自助设备、测试设备之间的硬件交互、软件通讯等各个模块的互动,具有比较强的专业性质,因此上述三种自动测试软件工具无法满足银行自助设备的自动测试的要求。
发明内容
本发明的目的在于提供了一种测试自助设备的方法、装置以及系统,通过调用机械手执行测试案例的测试过程,满足了自助设备自动测试的要求,提高了测试过程中的测试结果的准确性和测试效率,缩短了测试周期。
本发明提供的一种测试自助设备的方法,包括:
A、将从案例库中载入的测试案例解析为至少一条单步命令和与每条单步命令对应的预期结果;
B、按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,获取所述自助设备响应与所述单步命令对应的机械操作后的执行结果,一次机械操作与一条单步命令相对应,并根据单步命令的执行结果和预期结果确定所述测试案例的测试结果。本发明还提供一种测试自助设备的装置,包括:
解析模块,用于将从案例库中载入的测试案例解析为至少一条单步命令和与每条单步命令对应的预期结果;
执行模块,用于按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,获取所述自助设备响应与所述单步命令对应的机械操作后的执行结果,一次机械操作与一条单步命令相对应,并根据单步命令的执行结果和预期结果确定所述测试案例的测试结果。
本发明还提供一种测试自助设备的系统,包括自助设备、机械手、用于测试自助设备的装置。
实施本发明的一种测试自助设备的方法、装置以及系统,通过在自助设备的自动测试过程中调用机械手来执行测试案例的测试过程,在整个测试案例的测试过程中实现了完全自动化,省却了测试过程中的人工投入,不仅满足了自助设备自动测试的要求,提高了测试过程中的测试结果的准确性,而且缩短了整个自动测试设备的测试周期,提高了测试效率。
附图说明
图1示出了本发明的一种测试自助设备的方法的流程图;
图2示出了图1中的步骤S2的实施方式1的流程图;
图3示出了图2中的步骤S211的流程图;
图4示出了图2中的步骤S213的流程图;
图5示出了图1中的步骤S2的实施方式2的流程图;
图6示出了图1中的步骤S2的实施方式3的流程图;
图7示出了本发明的一种测试自助设备的系统的结构示意图;
图8示出了图7中测试装置的结构示意图;
图9示出了图8中执行模块的实施方式1的结构示意图;
图10示出了图8中执行模块的实施方式2的结构示意图;
图11示出了图8中执行模块的实施方式3的结构示意图;
图12示出了图9、图10、图11中读取单元的结构示意图;
图13示出了图9、图10、图11中获取单元的结构示意图;
图14示出了图9、图10、图11中第一判断结果处理单元的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明作详细描述。
在本发明中,测试案例是根据自助设备的测试过程生成的,例如:根据在ATM机上进行存款、取款、改密、转账、公积金查询、贷款查询、消费基金查询等一系列的操作过程生成的测试案例,还可以把外部已经生成的相关测试案例载入到案例库中。生成案例库之后,根据后续ATM机的功能改进或者测试过程的增加,还可以根据案例编制功能对案例库中已经生成的测试案例进行编辑。在编辑测试案例的过程中,可以在测试案例的预期结果中预设关键字,以便后续步骤的运行。
图1示出了本发明的一种测试自助设备的方法的流程图,由图1可知,所述方法至少包括:
S1:将从案例库中载入的测试案例解析为至少一条单步命令和与每条单步命令对应的预期结果;
从案例库中载入测试案例时,可以选择出一组或几组测试案例载入,也可以把案例库中的测试案例一并载入,然后对一个测试案例进行解析操作。解析操作执行后,测试案例成为至少一条可执行的单步命令和与该单步命令对应的预期结果,例如:在取款的测试案例中,解析后的单步命令包括插卡的单步命令、输密码的单步命令。
S2:按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,获取所述自助设备响应与所述单步命令对应的机械操作后的执行结果,一次机械操作与一条单步命令相对应,并根据单步命令的执行结果和预期结果确定所述测试案例的测试结果。
例如:在取款的测试案例中,对于插卡的单步命令,对应的一次机械操作指机械手执行插卡操作,对于输密码的单步命令,对应的一次机械操作指机械手七次按键操作,例如密码为123456,则对应的一次机械操作为机械手在数字键盘上按压“123456”和“确认”。
本发明提供的一种测试自助设备的方法,通过调用机械手执行测试案例的测试过程,满足了自助设备自动测试的要求,提高了测试过程中的测试结果的准确性和测试效率,缩短了测试周期。
下面将结合附图详细介绍步骤S2的三种实施方式。图2示出了步骤S2的实施方式1的流程图,由图2可知,所述方法至少包括:
S211:读取解析得到的单步命令中的第一条单步命令;
S212:将步骤S211中读取的单步命令发送到机械手以使所述机械手对自助设备进行机械操作;
具体而言,当发送的单步命令需要机械手实现插卡动作时,调用插卡机械手,当发送的单步命令需要机械手实现按键动作时,调用按压机械手。
S213:获取所述自助设备响应所述机械操作后的执行结果;
S214:将步骤S213中的所述单步命令的执行结果与该单步命令对应的预期结果进行比对,得到比对结果;
即根据载入测试案例之前在测试案例的预期结果中预设的关键字判断该单步命令的执行结果与测试案例中该单步命令对应的预期结果是否一致。当该单步命令的执行结果与测试案例中该单步命令对应的预期结果一致时,则该单步命令的比对结果为通过,执行步骤S215;
S215:判断所述单步命令是否为本测试案例解析得到的最后一条单步命令;
即判断载入的一组或几组测试案例中当前运行的测试案例解析得到的所有单步命令是否执行完毕,若否,则执行步骤S217,否则,执行步骤S216;
S216:终止所述测试案例的测试;
S217:读取下一条单步命令,然后执行步骤S212。
即继续获取当前测试案例解析后得到的下一条单步命令,然后返回步骤S212执行后续步骤。
在实施方式1中,判断当前单步命令的执行结果与该单步命令对应的预期结果是否一致时,仅对当前单步命令的执行结果与该单步命令对应的预期结果一致的情况做处理,未限定对于当前单步命令的执行结果与该单步命令对应的预期结果不一致的情况。
图3示出了图2中的步骤S211的流程图。如图3所示,所述步骤S211具体包括:
S2111:获取自助设备的应用程序的当前状态信息;
S2112:根据步骤S2111中获取的所述当前状态信息读取解析得到的第一条单步命令。
具体而言,开始对于当前测试案例的测试过程时,先获取自助设备的应用程序的当前状态信息,所述自助设备的应用程序的当前状态信息指待测试的自助设备的页面状态等信息,例如,在取款的测试案例中,第一个单步命令为调用机械手实现插卡操作。则在读取该单步命令前,需要获取自助设备的应用程序的当前状态信息,根据当前状态信息判断需要测试的ATM机是否系统恢复正常,是否到了可以插卡的初始页面,根据ATM机当前的页面状态,决定是否立即读取解析得到的第一条单步命令。
图4示出了图2中的步骤S213的流程图,参考图4,所述步骤S213具体包括:
S2131:接收所述自助设备的厂商驱动程序响应所述机械操作后的响应信息;
具体而言,即在执行完当前读取的单步命令之后,机械手按照该单步命令要求的相应动作代替人进行插拔卡、按键的机械操作,所述自助设备调用厂商驱动程序使硬件动起来之后,厂商驱动程序发送该自助设备响应所述机械操作后的响应信息,该响应信息中包括了响应该机械操作后的相应的事件和产生相关的数据记录。
S2132:根据预设的关键字从步骤S2131接收到的所述响应信息中获取执行所述单步命令后的执行结果。
根据载入测试案例之前在测试案例的预期结果中预设的关键字对该响应信息中相应的事件和产生相关的数据记录进行过滤操作,获取执行所述单步命令后的执行结果。例如,在取款的测试案例中,第一个单步命令为调用机械手实现插卡操作。则在调用插卡机械手执行完该单步命令后,需要获取自助设备的厂商驱动程序响应所述插卡操作后的响应信息。当插卡成功时,该响应信息中相应的事件和产生相关的数据记录主要包括卡被插入事件信息、插卡成功事件信息、读取磁道成功事件信息、磁道数据信息或者主要包括卡被插入事件信息、插卡成功事件信息、读取磁道失败事件信息。然后根据预设的关键字从接收到的所述相应的事件和产生相关的数据记录中获取执行所述插卡操作后的执行结果。
优选的,实施方式1中的步骤S217中读取下一条单步命令具体包括:
接收所述自助设备的应用程序响应所述机械操作后产生的状态信息;
根据所述状态信息读取下一条单步命令。
具体而言,即在执行完当前读取的单步命令之后,机械手按照该单步命令要求的相应动作代替人进行插拔卡、按键的机械操作,所述自助设备的应用程序显示响应该机械操作后相关的应用流程之后,应用程序发送该自助设备响应所述机械操作后的状态信息。根据该状态信息中显示的应用流程,读取下一条单步命令。例如,在取款的测试案例中,第一个单步命令为调用机械手实现插卡操作。则在调用插卡机械手执行完该单步命令后,根据预设的关键字获取到执行所述插卡操作后的执行结果且执行结果与预期结果一致时,接收ATM机的应用程序响应所述插卡操作产生的状态信息,分析该状态信息判断交易页面是否到了可以输入密码的页面,根据ATM机当前的页面状态,决定是否立即读取解析得到的下一条单步命令即调用机械手输入密码。
图5示出了图1中步骤S2的实施方式2的流程图,参考图5,所述方法至少包括:
S221-S223:与实施方式1中的步骤S211-S213完全相同,此处不再赘述;
S224:将步骤S223中的所述单步命令的执行结果与该单步命令对应的预期结果进行比对,得到比对结果;
即根据载入测试案例之前在测试案例的预期结果中预设的关键字判断该单步命令的执行结果与测试案例中该单步命令对应的预期结果是否一致。当该单步命令的执行结果与测试案例中该单步命令对应的预期结果一致时,则该单步命令的比对结果为通过,执行步骤S225;当该单步命令的执行结果与测试案例中该单步命令对应的预期结果不一致时,则该单步命令的比对结果为未通过,执行步骤S226;
S225:判断所述单步命令是否为本测试案例解析得到的最后一条单步命令;
即判断在载入的一组或几组测试案例中当前运行的测试案例解析得到的所有单步命令是否执行完毕,若否,则执行步骤S227,否则,执行步骤S226;
S226:终止所述测试案例的测试;
S227:读取下一条单步命令,然后执行步骤S222。
即继续获取当前测试案例解析后得到的下一条单步命令,然后返回步骤S222执行后续步骤,此处读取下一条单步命令与实施方式1中相同。
在实施方式2中,判断当前单步命令的执行结果与该单步命令对应的预期结果是否一致,若当前单步命令的执行结果与该单步命令对应的预期结果不一致,则说明待测的自助设备在当前测试案例的实际测试过程中出现错误,尚未执行的其他单步命令将不再执行,终止该测试案例的测试。
图6示出了图1中的步骤S2的实施方式3的流程图,参考图6,所述方法主要包括:
S231-S233:与实施方式1中的步骤S211-S213完全相同,这里不再赘述;
S234:将步骤S233中的所述单步命令的执行结果与该单步命令对应的预期结果进行比对,得到比对结果;
即根据载入测试案例之前在测试案例的预期结果中预设的关键字判断该单步命令的执行结果与测试案例中该单步命令对应的预期结果是否一致。当该单步命令的执行结果与测试案例中该单步命令对应的预期结果一致时,则该单步命令的比对结果为通过,执行步骤S235;当该单步命令的执行结果与测试案例中该单步命令对应的预期结果不一致时,则该单步命令的比对结果为未通过,执行步骤S238;
S235:判断所述单步命令是否为本测试案例解析得到的最后一条单步命令;
即判断载入的一组或几组测试案例中当前运行的测试案例解析得到的所有单步命令是否执行完毕,若否,则执行步骤S237,否则,执行步骤S236;
S236:终止所述测试案例的测试;
S237:读取下一条单步命令,然后执行步骤S232;
即继续获取当前测试案例解析得到的下一条单步命令,然后返回执行步骤S232以及后续步骤,此处读取下一条单步命令与实施方式1中相同。
S238:读取解析得到的所述单步命令中所述测试案例预定义的单步命令,返回执行步骤S232。
在实施方式3中,判断当前单步命令的执行结果与该单步命令对应的预期结果是否一致,当前单步命令的执行结果与该单步命令对应的预期结果不一致时,说明待测的自助设备在当前测试案例的实际测试过程中出现错误,将执行当前测试案例预定义的单步命令,此处当前测试案例预定义的单步命令指当单步命令的执行结果与预期结果不一致的情况出现时,停止执行下一条单步命令,转而执行测试案例中预定义的单步命令。例如,在取款的测试案例中,第一个单步命令为调用机械手实现插卡操作。当调用机械手执行完该单步命令之后,执行结果若与预期结果不一致,则执行按照当前测试案例预定义的单步命令,在取款的测试案例中预定义的单步命令为取卡操作,则转而执行取卡操作的单步命令,当取卡操作的单步命令成功执行后结束该测试案例的测试,进入下一个测试案例的解析过程。
在本发明的测试自动设备的方法中,步骤S2除了上述三种实施方式中的步骤之外,还包括:
实施方式1中的步骤S214、实施方式2中的步骤S224、实施方式3中的步骤S234之后还包括:
存储所述得到的比对结果,并当本测试案例的测试结束时,根据存储的比对结果生成第一测试报表。
即在对于具体一个测试案例的测试过程中,将每个单步命令的比对结果进行存储,以便当该测试案例执行完毕时,根据存储的所有比对结果生成第一测试报表,在第一测试报表中可以查阅到当前测试案例中的哪个单步命令与预期结果不一致。此处的第一测试报表,也可以在当步骤S1中载入的所有测试案例都测试结束时生成。
优选的,在本发明的测试自动设备的方法中,除了上述步骤之外,还包括:
当本测试案例的测试结束时,判断所述测试案例存储的比对结果中是否包含未通过;
当判断为是时,将所述测试案例的测试结果设置为未通过并存储该测试结果;
当判断为否时,将所述测试案例的测试结果设置为通过并存储该测试结果;
根据所述存储的测试结果生成第二测试报表。
具体而言,即在当前测试案例的测试结束后,判断所述测试案例存储的比对结果中是否包含未通过的情况,当判断为是时,说明待测的自助设备在运行当前测试案例的过程中,出现了与预期结果不一致的情况,因此将所述测试案例的测试结果设置为未通过并存储该测试结果;当判断为否时,说明待测的自助设备在当前测试案例的执行过程中,未出现与预期结果不一致的情况,因此将所述测试案例的测试结果设置为通过并存储该测试结果。根据所述存储的测试结果生成第二测试报表,在第二测试报表中,可以查阅到所有的测试案例中各个测试案例的测试结果。此处的第二测试报表,也可以在当步骤S1中载入的所有测试案例都测试结束时生成。
本发明的一种测试自助设备的方法中,步骤S2除了上述的实施方式之外,还可以按照下列方式实施:
按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,当停止执行当前的测试案例的单步命令时,获取自助设备响应机械操作后的执行结果,其中,机械操作与单步命令相对应,执行结果为执行单步命令的结果,通过执行结果分析当前测试案例的单步命令执行到了哪一条,并将执行结果与预期结果进行比对,以确定所述测试案例的测试结果。若当前测试案例的单步命令全部执行完毕,且比对结果都为通过时,该测试案例的测试结果通过,否则,当前测试案例的测试结果为未通过。
综上所述,具体介绍了本发明的一种测试自助设备的方法,通过在自助设备的测试过程中调用机械手来执行测试案例的测试过程,在整个测试案件的测试过程中实现了完全自动化,省却了测试过程中的人工投入,不仅满足了自助设备自动测试的要求,提高了测试过程中的测试结果的准确性,而且缩短了整个自动测试设备的测试周期,提高了测试效率,且由于在测试过程结束之后自动生成了测试报表,省却了手工收集测试数据的步骤,方便后续查看。
相应的,本发明还公开了一种测试自助设备的系统、装置。下面结合附图对该自动测试系统、装置进行详细阐述。
参考图7,是本发明的一种测试自助设备的系统的结构示意图。该系统包括自助设备21、机械手22、测试装置23。具体而言,测试装置23通过在对自助设备21的测试过程中调用机械手22来执行测试案例的测试过程,在整个测试案例的测试过程中实现了自动化,省却了测试过程中的人工投入。下面结合附图进一步详细介绍本发明的一种测试自助设备的装置。
图8是本发明的一种测试自助设备的装置的结构示意图,由图8可知,所述测试装置至少包括:
解析模块231,用于将从案例库中载入的测试案例解析为至少一条单步命令和与每条单步命令对应的预期结果;
执行模块232,用于按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,获取所述自助设备响应与所述单步命令对应的机械操作后的执行结果,一次机械操作与一条单步命令相对应,并根据单步命令的执行结果和预期结果确定所述测试案例的测试结果。
下面将结合附图具体介绍本发明测试装置中的执行模块的三种实施方式。图9是执行模块的实施方式1的示意图,由图9可知,所述执行模块包括:
读取单元23211,用于读取解析得到的所述单步命令中的第一条单步命令;
发送单元23212,用于将读取的单步命令发送到机械手以使所述机械手对自助设备进行机械操作;
获取单元23213,用于获取所述自助设备响应所述发送单元23212的机械操作后的执行结果;
比对单元23214,用于将获取单元23213的所述单步命令的执行结果与该单步命令对应的预期结果进行比对,得到比对结果;
判断单元23215,用于当所述比对单元23214获取的比对结果为通过时,判断所述单步命令是否为本测试案例解析得到的最后一条单步命令;
第一判断结果处理单元23216,用于当所述判断单元23215的判断结果为否时,读取解析得到的单步命令中的下一条单步命令,通过所述发送单元23212将该条单步命令发送到所述机械手以使所述机械手对自助设备进行机械操作;
第二判断结果处理单元23217,用于当所述判断单元23215的判断结果为是时,终止所述测试案例的测试。
在实施方式1中,比对单元23214获取当前单步命令的执行结果与该单步命令对应的预期结果进行比对之后的比对结果,仅对比对结果为通过的情况做处理,未限定比对结果为未通过的情况。
图10是执行模块的实施方式2的示意图,由图10可知,所述执行模块除了包括实施方式1中的读取单元23211、发送单元23212、获取单元23213、比对单元23214、判断单元23215、第一判断结果处理单元23216、第二判断结果处理单元23217外,还包括:
第一比对结果处理单元23228,用于当比对单元23214获取的比对结果为未通过时,终止所述测试案例的测试。
在实施方式2中,比对单元23214获取当前单步命令的执行结果与该单步命令对应的预期结果进行比对之后的比对结果,若当前单步命令的比对结果为未通过时,则说明待测的自助设备在当前测试案例的实际测试过程中出现错误,尚未执行的其他单步命令将不再执行,终止该测试案例的测试。
图11是执行模块的实施方式3的示意图,由图11可知,所述执行模块除了包括实施方式1中的读取单元23211、发送单元23212、获取单元23213、比对单元23214、判断单元23215、第一判断结果处理单元23216、第二判断结果处理单元23217外,还包括:
第二比对结果处理单元23238,用于当比对单元23214获取的比对结果为未通过时,读取解析得到的所述单步命令中所述测试案例预定义的单步命令,通过发送单元23212将该条单步命令发送到所述机械手以使所述机械手对自助设备进行机械操作。
在实施方式3中,比对单元23214获取当前单步命令的执行结果与该单步命令对应的预期结果进行比对之后的比对结果,若当前单步命令的比对结果为未通过时,则说明待测的自助设备在当前测试案例的实际测试过程中出现错误,将执行当前测试案例预定义的单步命令,此处当前测试案例预定义的单步命令指当比对结果为未通过的情况出现时,停止执行下一条单步命令,转而执行测试案例中预定义的单步命令。例如,在取款的测试案例中,第一个单步命令为调用机械手实现插卡操作。当调用机械手执行完该单步命令之后,若比对结果为未通过,则执行按照当前测试案例预定义的单步命令,在取款的测试案例中预定义的单步命令为取卡操作,当取卡操作的单步命令成功执行后结束该测试案例的测试,进入下一个测试案例的解析过程。
图12示出了图9、图10、图11中读取单元的结构示意图,由图12可知,读取单元包括:
第一获取子单元121,用于获取自助设备的应用程序的当前状态信息;
第一读取子单元122,用于根据所述第一获取子单元121获取的当前状态信息读取解析得到的第一条单步命令。
具体而言,开始对于当前测试案例的测试过程时,先获取自助设备的应用程序的当前状态信息,所述自助设备的应用程序的当前状态信息主要指待测试的自助设备的页面状态等信息。例如,在取款的测试案例中,第一个单步命令为调用机械手实现插卡操作。则在读取该单步命令前,需要获取自助设备的应用程序的当前状态信息,根据当前状态信息判断需要测试的ATM机是否系统恢复正常,是否到了可以插卡的初始页面,根据ATM机当前的页面状态,决定是否立即读取解析得到的第一条单步命令。
图13示出了图9、图10、图11中获取单元的结构示意图,由图13可知,获取单元包括:
第一接收子单元131,用于接收所述自助设备的厂商驱动程序响应所述机械操作后的响应信息;
具体而言,即在执行完当前读取的单步命令之后,机械手按照该单步命令要求的相应动作代替人进行插拔卡、按键的机械操作,所述自助设备调用厂商驱动程序使硬件动起来之后,厂商驱动程序发送该自助设备响应所述机械操作后的响应信息,该响应信息中包括了响应该机械操作后的相应的事件和产生相关的数据记录。
第二获取子单元132,用于根据预设的关键字从所述响应信息中获取执行所述单步命令后的执行结果。
根据载入测试案例之前在测试案例的预期结果中预设的关键字对该响应信息中相应的事件和产生相关的数据记录进行过滤操作,获取执行所述单步命令后的执行结果。例如,在取款的测试案例中,第一个单步命令为调用机械手实现插卡操作。则在调用插卡机械手执行完该单步命令后,需要获取自助设备的厂商驱动程序响应所述插卡操作后的响应信息,根据预设的关键字从接收到的所述响应信息中获取执行所述插卡操作后的执行结果。
图14示出了图9、图10、图11中第一判断结果处理单元的结构示意图,由图14可知,第一判断结果处理单元包括:
第二接收子单元141,用于当所述判断单元的判断结果为否时,接收所述自助设备的应用程序响应所述机械操作后产生的状态信息;
第二读取子单元142,用于根据所述状态信息读取下一条单步命令。
具体而言,即在执行完当前读取的单步命令之后,机械手按照该单步命令要求的相应动作代替人进行插拔卡、按键的机械操作,所述自助设备的应用程序显示响应该机械操作后相关的应用流程之后,应用程序发送该自助设备响应所述机械操作后的状态信息。根据该状态信息中的应用流程,读取下一条单步命令。例如,在取款的测试案例中,第一个单步命令为调用机械手实现插卡操作。则在调用插卡机械手执行完该单步命令后,根据预设的关键字获取到执行所述插卡操作后的执行结果且执行结果与预期结果一致时,接收ATM机的应用程序响应所述插卡操作产生的状态信息,分析该状态信息判断交易页面是否到了可以输入密码的页面,根据ATM机当前的页面状态,决定是否立即读取解析得到的下一条单步命令即调用机械手输入密码。
在本发明的测试装置中的执行模块,除了上述三种实施方式中的单元之外,还包括:
存储单元,用于存储所述比对单元比对后的比对结果;
第一生成单元,用于根据所述存储的比对结果生成第一测试报表。
即在对于具体一个测试案例的测试过程中,将每个单步命令的比对结果进行存储,以便当该测试案例执行完毕时,根据存储的所有比对结果生成第一测试报表,在第一测试报表中可以查阅到当前测试案例中的哪个单步命令与预期结果不一致。此处的第一测试报表,也可以在当解析模块中载入的所有测试案例都测试结束时生成。
优选的,在本发明的测试装置中的执行模块,除了上述单元之外,还包括:
比对结果判断单元,用于当本测试案例的测试结束时,判断所述测试案例存储的比对结果中是否包含未通过;
第一设置单元,用于当所述比对结果判断单元的判断结果为是时,将所述测试案例的测试结果设置为未通过并存储该测试结果;
第二设置单元,用于当所述比对结果判断单元的判断结果为否时,将所述测试案例的测试结果设置为通过并存储该测试结果;
第二生成单元,用于根据所述存储的测试结果生成第二测试报表。
具体而言,即在当前测试案例的测试结束后,判断所述测试案例存储的比对结果中是否包含未通过的情况,当判断为是时,说明待测的自助设备在运行当前测试案例的过程中,出现了与预期结果不一致的情况,因此将所述测试案例的测试结果设置为未通过并存储该测试结果;当判断为否时,说明待测的自助设备在当前测试案例的执行过程中,未出现与预期结果不一致的情况,因此将所述测试案例的测试结果设置为通过并存储该测试结果。根据所述存储的测试结果生成第二测试报表,在第二测试报表中,可以查阅到所有的测试案例中各个测试案例的测试结果。此处的第二测试报表,也可以在当解析模块载入的所有测试案例都测试结束时生成。
本发明的一种测试自助设备的装置中,执行模块除了上述的实施方式之外,还可以按照下列方式实施:
按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,当停止执行当前的测试案例的单步命令时,获取自助设备响应机械操作后的执行结果,其中,机械操作与单步命令相对应,执行结果为执行单步命令的结果,通过执行结果分析当前测试案例的单步命令执行到了哪一条,并将执行结果与预期结果进行比对,以确定所述测试案例的测试结果。若当前测试案例的单步命令全部执行完毕,且比对结果都为通过时,该测试案例的测试结果通过,否则,当前测试案例的测试结果为未通过。
综上所述,本发明实施例的一种测试自助设备的方法、装置及其系统,通过在自助设备的自动测试过程中调用机械手来执行测试案例的测试过程,在整个测试案件的测试过程中实现了完全自动化,省却了测试过程中的人工投入,不仅满足了自助设备自动测试的要求,提高了测试过程中的测试结果的准确性,而且缩短了整个自动测试设备的测试周期,提高了测试效率,且由于在测试过程结束之后自动生成了测试报表,省却了手工收集测试数据的步骤,方便后续查看。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所公开的仅为本发明的具体实施方式,仅用于对本发明进行举例说明,不能以此限定本发明之保护范围,本领域技术人员在不脱离本发明实质的前提下可以进行各种修改、变化或替换,因此,依照本发明所作的各种等同变化,仍属于本发明所涵盖的范围。

Claims (16)

1.一种测试自助设备的方法,其特征在于,包括:
A、将从案例库中载入的测试案例解析为至少一条单步命令和与每条单步命令对应的预期结果;
B、按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,获取所述自助设备响应与所述单步命令对应的机械操作后的执行结果,一次机械操作与一条单步命令相对应,并根据单步命令的执行结果和预期结果确定所述测试案例的测试结果。
2.如权利要求1所述的方法,其特征在于,步骤B包括:
a、读取解析得到的单步命令中的第一条单步命令;
b、将读取的单步命令发送到机械手以使所述机械手对自助设备进行机械操作;
c、获取所述自助设备响应所述机械操作后的执行结果;
d、将所述单步命令的执行结果与该单步命令对应的预期结果进行比对,得到比对结果,当所述比对结果为通过时,执行步骤e;
e、判断所述单步命令是否为本测试案例解析得到的最后一条单步命令,当判断为否时,读取下一条单步命令,返回执行步骤b,否则,执行步骤f;
f、终止所述测试案例的测试。
3.如权利要求2所述的方法,其特征在于,所述步骤B还包括:
在步骤d中,当所述比对结果为未通过时,执行步骤f或读取解析得到的单步命令中所述测试案例预定义的单步命令,返回执行步骤b。
4.如权利要求1所述的方法,其特征在于,所述案例库中的测试案例是:
通过案例编制功能编制的测试案例、通过案例编制功能对已存在的测试案例进行编辑后得到的测试案例、从外部载入到所述案例库的测试案例。
5.如权利要求2所述的方法,其特征在于,步骤a包括:
a1、获取自助设备的应用程序的当前状态信息;
a2、根据所述当前状态信息读取解析得到的第一条单步命令;
和/或
步骤e中读取解析得到的下一条单步命令包括:
e1、接收所述自助设备的应用程序响应所述机械操作后产生的状态信息;
e2、根据所述状态信息读取下一条单步命令。
6.如权利要求2所述的方法,其特征在于,步骤c包括:
c1、接收所述自助设备的厂商驱动程序响应所述机械操作后的响应信息;
c2、根据预设的关键字从所述响应信息中获取执行所述单步命令后的执行结果。
7.如权利要求2所述的方法,其特征在于,所述步骤B还包括:
步骤d中,在所述得到比对结果之后,存储得到的所述比对结果;
当本测试案例的测试结束时,根据所述存储的比对结果生成第一测试报表。
8.如权利要求7所述的方法,其特征在于,所述步骤B还包括:
当本测试案例的测试结束时,判断所述测试案例存储的比对结果中是否包含未通过;
当判断为是时,将所述测试案例的测试结果设置为未通过并存储该测试结果;
当判断为否时,将所述测试案例的测试结果设置为通过并存储该测试结果;
根据所述存储的测试结果生成第二测试报表。
9.一种测试自助设备的装置,其特征在于,包括:
解析模块,用于将从案例库中载入的测试案例解析为至少一条单步命令和与每条单步命令对应的预期结果;
执行模块,用于按照所述至少一条单步命令顺序驱动机械手对自助设备进行机械操作,获取所述自助设备响应与所述单步命令对应的机械操作后的执行结果,所述一次机械操作与一条单步命令相对应,并根据单步命令的执行结果和预期结果确定所述测试案例的测试结果。
10.如权利要求9所述的装置,其特征在于,所述执行模块包括:
读取单元,用于读取解析得到的所述单步命令中的第一条单步命令;
发送单元,用于将读取的单步命令发送到机械手以使所述机械手对自助设备进行机械操作;
获取单元,用于获取所述自助设备响应所述机械操作后的执行结果;
比对单元,用于将所述单步命令的执行结果与该单步命令对应的预期结果进行比对,得到比对结果;
判断单元,用于当所述比对单元获取的比对结果为通过时,判断所述单步命令是否为本测试案例解析得到的最后一条单步命令;
第一判断结果处理单元,用于当所述判断单元的判断结果为否时,读取解析得到的单步命令中的下一条单步命令,通过所述发送单元将该条单步命令发送到所述机械手以使所述机械手对自助设备进行机械操作;
第二判断结果处理单元,用于当所述判断单元的判断结果为是时,终止所述测试案例的测试。
11.如权利要求10所述的装置,其特征在于,所述执行模块还包括:
第一比对结果处理单元,用于当所述比对单元获取的比对结果为未通过时,终止所述测试案例的测试;或
第二比对结果处理单元,用于当所述比对单元获取的比对结果为未通过时,读取解析得到的所述单步命令中所述测试案例预定义的单步命令,通过所述发送单元将该条单步命令发送到所述机械手以使所述机械手对自助设备进行机械操作。
12.如权利要求10所述的装置,其特征在于,所述读取单元包括:
第一获取子单元,用于获取自助设备的应用程序的当前状态信息;
第一读取子单元,用于根据所述当前状态信息读取解析得到的第一条单步命令;或
所述第一判断结果处理单元包括:
第二接收子单元,用于当所述判断单元的判断结果为否时,接收所述自助设备的应用程序响应所述机械操作后产生的状态信息;
第二读取子单元,用于根据所述状态信息读取下一条单步命令。
13.如权利要求10所述的装置,其特征在于,所述获取单元包括:
第一接收子单元,用于接收所述自助设备的厂商驱动程序响应所述机械操作后的响应信息;
第二获取子单元,用于根据预设的关键字从所述响应信息中获取执行所述单步命令后的执行结果。
14.如权利要求10所述的装置,其特征在于,所述执行模块还包括:
存储单元,用于存储所述比对单元比对得到的比对结果;
第一生成单元,用于当本测试案例的测试结束时,根据所述存储的比对结果生成第一测试报表。
15.如权利要求14所述的装置,其特征在于,所述执行模块还包括:
比对结果判断单元,用于当本测试案例的测试结束时,判断所述测试案例存储的比对结果中是否包含未通过;
第一设置单元,用于当所述比对结果判断单元的判断结果为是时,将所述测试案例的测试结果设置为未通过并存储该测试结果;
第二设置单元,用于当所述比对结果判断单元的判断结果为否时,将所述测试案例的测试结果设置为通过并存储该测试结果;
第二生成单元,用于根据所述存储的测试结果生成第二测试报表。
16.一种测试自助设备的系统,包括自助设备、机械手,其特征在于,还包括如权利要求9-15中任意一项所述的用于测试自助设备的装置。
CN2009102045735A 2009-12-01 2009-12-01 一种测试自助设备的方法、装置以及系统 Active CN101814217B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009102045735A CN101814217B (zh) 2009-12-01 2009-12-01 一种测试自助设备的方法、装置以及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009102045735A CN101814217B (zh) 2009-12-01 2009-12-01 一种测试自助设备的方法、装置以及系统

Publications (2)

Publication Number Publication Date
CN101814217A true CN101814217A (zh) 2010-08-25
CN101814217B CN101814217B (zh) 2012-03-28

Family

ID=42621460

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009102045735A Active CN101814217B (zh) 2009-12-01 2009-12-01 一种测试自助设备的方法、装置以及系统

Country Status (1)

Country Link
CN (1) CN101814217B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102157037A (zh) * 2011-01-05 2011-08-17 深圳市怡化电脑有限公司 软件和模块的自动化测试方法及其系统
CN103064678A (zh) * 2012-12-24 2013-04-24 广州广电运通金融电子股份有限公司 一种硬件指令调用控制方法和装置
CN104461863A (zh) * 2014-10-29 2015-03-25 中国建设银行股份有限公司 一种业务系统测试方法、设备及系统
CN105242999A (zh) * 2015-09-22 2016-01-13 深圳怡化电脑股份有限公司 一种测试金融自助设备的方法及装置
CN106126418A (zh) * 2016-06-20 2016-11-16 福建省农村信用社联合社 一种基于机械臂的银行终端自动化测试装置、系统、及方法
CN108230158A (zh) * 2016-12-15 2018-06-29 平安科技(深圳)有限公司 一种理赔测试方法和装置
CN109902029A (zh) * 2019-04-17 2019-06-18 深圳市新国都支付技术有限公司 一种用于pos终端的测试方法及测试装置
CN110233772A (zh) * 2019-04-22 2019-09-13 视联动力信息技术股份有限公司 一种视联网系统测试方法和装置
CN110781576A (zh) * 2019-09-09 2020-02-11 腾讯科技(深圳)有限公司 一种仿真节点调度方法、装置及设备

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102157037B (zh) * 2011-01-05 2013-01-09 深圳市怡化电脑有限公司 软件和模块的自动化测试方法及其系统
CN102157037A (zh) * 2011-01-05 2011-08-17 深圳市怡化电脑有限公司 软件和模块的自动化测试方法及其系统
CN103064678B (zh) * 2012-12-24 2016-04-20 广州广电运通金融电子股份有限公司 一种硬件指令调用控制方法和装置
CN103064678A (zh) * 2012-12-24 2013-04-24 广州广电运通金融电子股份有限公司 一种硬件指令调用控制方法和装置
WO2014101384A1 (zh) * 2012-12-24 2014-07-03 广州广电运通金融电子股份有限公司 一种硬件指令调用控制方法和装置
CN104461863B (zh) * 2014-10-29 2018-04-17 中国建设银行股份有限公司 一种业务系统测试方法、设备及系统
CN104461863A (zh) * 2014-10-29 2015-03-25 中国建设银行股份有限公司 一种业务系统测试方法、设备及系统
CN105242999A (zh) * 2015-09-22 2016-01-13 深圳怡化电脑股份有限公司 一种测试金融自助设备的方法及装置
CN105242999B (zh) * 2015-09-22 2019-09-20 深圳怡化电脑股份有限公司 一种测试金融自助设备的方法及装置
CN106126418A (zh) * 2016-06-20 2016-11-16 福建省农村信用社联合社 一种基于机械臂的银行终端自动化测试装置、系统、及方法
CN106126418B (zh) * 2016-06-20 2018-09-14 福建省农村信用社联合社 一种基于机械臂的银行终端自动化测试装置、系统、及方法
CN108230158A (zh) * 2016-12-15 2018-06-29 平安科技(深圳)有限公司 一种理赔测试方法和装置
CN108230158B (zh) * 2016-12-15 2021-12-03 平安科技(深圳)有限公司 一种理赔测试方法和装置
CN109902029A (zh) * 2019-04-17 2019-06-18 深圳市新国都支付技术有限公司 一种用于pos终端的测试方法及测试装置
CN110233772A (zh) * 2019-04-22 2019-09-13 视联动力信息技术股份有限公司 一种视联网系统测试方法和装置
CN110233772B (zh) * 2019-04-22 2021-11-19 视联动力信息技术股份有限公司 一种视联网系统测试方法和装置
CN110781576A (zh) * 2019-09-09 2020-02-11 腾讯科技(深圳)有限公司 一种仿真节点调度方法、装置及设备

Also Published As

Publication number Publication date
CN101814217B (zh) 2012-03-28

Similar Documents

Publication Publication Date Title
CN101814217B (zh) 一种测试自助设备的方法、装置以及系统
CN102831052B (zh) 测试用例自动化生成装置及方法
CN110309071B (zh) 测试代码的生成方法及模块、测试方法及系统
CN106506283B (zh) 银行和企业对接系统的业务测试方法和装置
CN104461863A (zh) 一种业务系统测试方法、设备及系统
CN101339532A (zh) 一种Web应用系统的自动化测试方法及装置
CN104317713A (zh) 一种基于模板的自动化测试工具及方法
CN112256581B (zh) 高仿真证券业交易类系统的日志回放测试方法及装置
US6269457B1 (en) Technology regression and verification acceptance method
CN101738550A (zh) 电子装置测试装置及测试方法
CN117421217B (zh) 一种软件功能自动测试方法、系统、终端及介质
CN111241111B (zh) 数据查询方法及装置、数据对比方法及装置、介质及设备
EP3470988A1 (en) Method for replicating production behaviours in a development environment
CN113609008B (zh) 测试结果分析方法、装置和电子设备
CN111752833B (zh) 一种软件质量体系准出方法、装置、服务器及存储介质
CN112433948A (zh) 一种基于网络数据分析的仿真测试系统及方法
CN115061924A (zh) 自动化测试案例的生成方法、生成装置
CN103440460A (zh) 一种应用系统变更验证方法及验证系统
CN111400390B (zh) 数据处理方法及装置
CN111930611A (zh) 一种测试数据的统计方法和装置
CN111552648A (zh) 用于应用的自动验证方法和系统
Duboc et al. A case study in eliciting scalability requirements
US9098613B2 (en) Logging of application messages
Zhao et al. How to Manage Change-Induced Incidents? Lessons from the Study of Incident Life Cycle
CN110362464B (zh) 软件分析方法及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant