应用程序用户界面自动化测试方法及电子设备技术

技术编号:13674640 阅读:79 留言:0更新日期:2016-09-08 00:00
一种应用程序用户界面自动化测试方法,包括:将应用程序用户界面的测试软件框架分为业务需求层、方法定义层和方法实现层;在收到用户针对测试软件的控件名称的修改请求时,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义;根据所述方法实现层,找到与确定出的流程定义对应的程序块;及在找到的程序块中找出与修改后的控件名称属于同一同义名称集合的其他名称,并在找到的程序块中将找出的其他名称替换为修改后的控件名称。本发明专利技术还提供一种执行上述方法的电子设备。本发明专利技术可以在用户界面有新的需求或者需要改版,不需要重写自动化测试的代码。

【技术实现步骤摘要】

本专利技术涉及测试
,特别是一种应用程序用户界面自动化测试方法及电子设备
技术介绍
用户界面(User Interface,简称UI,亦称使用者界面)是指对软件的人机交互、操作逻辑、界面美观的整体设计,是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受的形式之间的转换。用户界面是介于用户与硬件而设计的彼此之间交互沟通的软件,目的在于使得用户能够方便有效率地去操作硬件以达成双向的交互,完成所希望借助硬件完成的工作。好的UI设计不仅是让软件变得有个性有品味,还要让软件的操作变得舒适、简单、自由、充分体现软件的定位和特点。随着计算机硬件的飞速发展,过去的应用程序(软件产品)已经不能适应用户的要求。软件产品在激烈的市场竞争中,仅仅有强大的功能是远远不够的,不足以战胜强劲的对手。一些高瞻远瞩的企业已经开始意识到UI给软件产品带来的巨大卖点。实践证明,各商家只要在产品美观和易用设计方面很小的投入,将会有很大的产出。其投入产出比,要比在功能领先性开发上的投入大得多。目前,行业内软件产品UI自动化测试时,一旦如图1所示,有新的需求或者改版时,所有的自动化测试的代码都需要重写,维护和实施自动化测试,耗时耗力,无法继续投入实施。
技术实现思路
鉴于以上内容,有必要提供一种应用程序用户界面自动化测试方法,其可
以在用户界面有新的需求或者需要改版,不需要重写自动化测试的代码。一种应用程序用户界面自动化测试方法,运行于电子设备中,该方法包括:将应用程序用户界面的测试软件框架分为业务需求层、方法定义层和方法实现层,其中,所述业务需求层定义有各个功能控件的同义名称集合及各个功能控件对应不同场景的业务流程,所述方法定义层映射业务需求层,用于对所述业务需求层的各个业务流程定义有对应的流程定义,以及所述方法实现层映射方法定义层,用于定义各个业务流程的流程定义对应的程序块;在收到用户针对测试软件的控件名称的修改请求时,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义;根据所述方法实现层,找到与确定出的流程定义对应的程序块;及在找到的程序块中找出与修改后的控件名称属于同一同义名称集合的其他名称,并在找到的程序块中将找出的其他名称替换为修改后的控件名称。优选地,其中,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义包括:分析修改后的名称是否属于所述业务需求层定义的同义名称集合;若修改后的名称属于所述业务需求层定义的同义名称集合,则找到修改后的控件名称对应的业务流程;根据所述方法定义层,确定出找到的业务流程对应的流程定义;若修改后的控件名称不属于所述业务需求层定义的同义名称集合,则生成第一提醒信息,以提醒用户将修改后的控件名称加入对应的同义名称集合中,并在修改后的控件名称加入至一个同义名称集合中后,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义。优选地,该方法还包括:收到用户针对测试软件的一个功能控件的场景的修改请求时,根据所述业务需求层,确定出修改后的场景对应的业务流程;根据所述方法定义层,找到与确定出的业务流程对应的流程定义;根据所述方法实现层,找出与找到的流程定义对应的程序;及在所述测试软件中,将原场景对应的程序块替换为找到的程序块。优选地,其中,所述根据所述业务需求层,确定出修改后的场景对应的业务流程包括:分析修改后的场景是否属于所述业务需求层定义的场景;若修改后的场景属于所述业务需求层定义的场景,则确定出修改后的场景对应的业务流程;若修改后的场景不属于所述业务需求层定义的场景,则生成第二提醒信息,以提醒用户将修改后的场景及其对应的业务流程加入所述业务需求层,并提醒用户在所述方法定义层增加与修改后的场景对应的业务流程的流程定义,及在所述方法实现层增加与修改后的场景对应的流程定义的程序块。鉴于以上内容,还有必要提供一种执行上述应用程序用户界面自动化测试方法的电子设备,其可以在用户界面有新的需求或者需要改版,不需要重写自动化测试的代码。一种电子设备,该电子设备包括存储设备以及处理器。其中:所述存储设备,用于存储一个应用程序用户界面自动化测试系统;所述处理器,用于调用并执行所述应用程序用户界面自动化测试系统,以执行如下步骤:将应用程序用户界面的测试软件框架分为业务需求层、方法定义层和方法实现层,其中,所述业务需求层定义有各个功能控件的同义名称集合及各个功能控件对应不同场景的业务流程,所述方法定义层映射业务需求层,用于对所述业务需求层的各个业务流程定义有对应的流程定义,以及所述方法实现层映射方法定义层,用于定义各个业务流程的流程定义对应的程序块;在收到用户针对测试软件的控件名称的修改请求时,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义;根据所述方法实现层,找到与确定出的流程定义对应的程序块;及在找到的程序块中找出与修改后的控件名称属于同一同义名称集合的其他名称,并在找到的程序块中将找出的其他名称替换为修改后的控件名称。优选地,其中,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义的步骤包括:分析修改后的名称是否属于所述业务需求层定义的同义名称集合;若修改后的名称属于所述业务需求层定义的同义名称集合,则找到修改后的控件名称对应的业务流程;根据所述方法定义层,确定出找到的业务流程对应的流程定义;若修改后的控件名称不属于所述业务需求层定义的同义名称集合,则生成第一提醒信息,以提醒用户将修改后的控件名称加入对应的同义名称集合中,并在修改后的控件名称加入至一个同义名称集合中后,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义。优选地,所述应用程序用户界面自动化测试系统还执行如下步骤:收到用户针对测试软件的一个功能控件的场景的修改请求时,根据所述业务需求层,确定出修改后的场景对应的业务流程;根据所述方法定义层,找到与确定出的业务流程对应的流程定义;根据所述方法实现层,找出与找到的流程定义对应的程序;及在所述测试软件中,将原场景对应的程序块替换为找到的程序块。优选地,其中,所述根据所述业务需求层,确定出修改后的场景对应的业务流程的步骤包括:分析修改后的场景是否属于所述业务需求层定义的场景;若修改后的场景属于所述业务需求层定义的场景,则确定出修改后的场景对应的业务流程;若修改后的场景不属于所述业务需求层定义的场景,则生成第二提醒信息,以提醒用户将修改后的场景及其对应的业务流程加入所述业务需求层,并提醒用户在所述方法定义层增加与修改后的场景对应的业务流程的流程定义,及在所述
方法实现层增加与修改后的场景对应的流程定义的程序块。本专利技术所述应用程序用户界面自动化测试方法及适用于上述方法的电子设备,可以在用户界面有新的需求或者需要改版时,不需要重写自动化测试的代码,节省测试时间与效率。附图说明图1举例说明软件产品用户界面的改版。图2是本专利技术应用程序用户界面自动化测试系统的硬件环境示意图。图3是本专利技术应用程序用户界面自动化测试系统较佳实施例的功能模块图。图4是本专利技术应用程序用户界面自动化测试方法较佳实施例的方法流程图。具体实施方式参阅图2所示,是本专利技术应用程序用户界面自动化测试系统的硬本文档来自技高网
...
应用程序用户界面自动化测试方法及电子设备

【技术保护点】
一种应用程序用户界面自动化测试方法,运行于电子设备中,其特征在于,该方法包括:将应用程序用户界面的测试软件框架分为业务需求层、方法定义层和方法实现层,其中,所述业务需求层定义有各个功能控件的同义名称集合及各个功能控件对应不同场景的业务流程,所述方法定义层映射业务需求层,用于对所述业务需求层的各个业务流程定义有对应的流程定义,以及所述方法实现层映射方法定义层,用于定义各个业务流程的流程定义对应的程序块;在收到用户针对测试软件的控件名称的修改请求时,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义;根据所述方法实现层,找到与确定出的流程定义对应的程序块;及在找到的程序块中找出与修改后的控件名称属于同一同义名称集合的其他名称,并在找到的程序块中将找出的其他名称替换为修改后的控件名称。

【技术特征摘要】
1.一种应用程序用户界面自动化测试方法,运行于电子设备中,其特征在于,该方法包括:将应用程序用户界面的测试软件框架分为业务需求层、方法定义层和方法实现层,其中,所述业务需求层定义有各个功能控件的同义名称集合及各个功能控件对应不同场景的业务流程,所述方法定义层映射业务需求层,用于对所述业务需求层的各个业务流程定义有对应的流程定义,以及所述方法实现层映射方法定义层,用于定义各个业务流程的流程定义对应的程序块;在收到用户针对测试软件的控件名称的修改请求时,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义;根据所述方法实现层,找到与确定出的流程定义对应的程序块;及在找到的程序块中找出与修改后的控件名称属于同一同义名称集合的其他名称,并在找到的程序块中将找出的其他名称替换为修改后的控件名称。2.如权利要求1所述的方法,其特征在于,其中,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义包括:分析修改后的名称是否属于所述业务需求层定义的同义名称集合;若修改后的名称属于所述业务需求层定义的同义名称集合,则找到修改后的控件名称对应的业务流程;根据所述方法定义层,确定出找到的业务流程对应的流程定义;若修改后的控件名称不属于所述业务需求层定义的同义名称集合,则生成第一提醒信息,以提醒用户将修改后的控件名称加入对应的同义名称集合中,并在修改后的控件名称加入至一个同义名称集合中后,根据所述业务需求层及方法定义层,确定出修改后的控件名称对应的流程定义。3.如权利要求1所述的方法,其特征在于,该方法还包括:收到用户针对测试软件的一个功能控件的场景的修改请求时,根据所述业
\t务需求层,确定出修改后的场景对应的业务流程;根据所述方法定义层,找到与确定出的业务流程对应的流程定义;根据所述方法实现层,找出与找到的流程定义对应的程序;及在所述测试软件中,将原场景对应的程序块替换为找到的程序块。4.如权利要求3所述的方法,其特征在于,其中,所述根据所述业务需求层,确定出修改后的场景对应的业务流程包括:分析修改后的场景是否属于所述业务需求层定义的场景;若修改后的场景属于所述业务需求层定义的场景,则确定出修改后的场景对应的业务流程;若修改后的场景不属于所述业务需求层定义的场景,则生成第二提醒信息,以提醒用户将修改后的场景及其对应的业务流程加入所述业务需求层,并提醒用户在所述方法定义层增加与修改后的场景对应的业务流程的流程定义,及在所述方法实现层增加与修改后的场景对应的流程定义的程序块。5.一种适用于权利要求1至4任一项所述方法的电子设备,其特征在于,该电子设备包括存储设备以及处理器,其中:所述...

【专利技术属性】
技术研发人员:高云
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1