一种APP的UI截图测试方法及系统与流程

文档序号:15462365发布日期:2018-09-18 18:28阅读:273来源:国知局

本发明涉及APP测试领域,更具体地说,涉及一种APP的UI截图测试方法及系统。



背景技术:

随着移动智能终端的广泛应用,移动终端正向功能增强化、多模化、定制化、平台开放化的方向发展,而基于Android系统或IOS系统开发的移动应用服务APP正在影响并改变着人们的生活。每款APP在开发完毕后,为了避免用户使用时出现点击某个功能无法响应、用户界面(User Interface,UI)跳转失败或者逻辑错误等问题,需要对所开发的APP进行测试。

测试时,所采用的方法是被测终端的测试程序控制被测终端进行UI截图,并将UI截图发送至测试主机,由测试主机或者测试人员根据测试主机接收到的UI截图,判断APP是否工作正常。为了保证测试的准确性,被测终端往往需要对每一个测试子项进行很多次的UI截图,再加上测试子项往往很多,测试人员或者测试主机需要查看的UI截图十分巨大,因此测试人员的工作量十分巨大/测试主机需要处理的数据很大,影响测试效率。



技术实现要素:

本发明要解决的技术问题在于,针对现有技术对APP的测试过程中,为了保证测试的准确性,被测终端往往需要对每一个测试子项进行很多次的UI截图,再加上测试子项往往很多,测试人员或者测试主机需要查看的UI截图十分巨大,因此测试人员的工作量十分巨大/测试主机需要处理的数据很大,影响测试效率的技术缺陷,提供一种APP的UI截图测试方法及系统。

本发明解决其技术问题所采用的技术方案是:构造一种APP的UI截图测试方法,包括下述步骤:

S1、对于每一个测试子项,分别控制被测终端进行一次或者多次UI截图,并将UI截图发送至测试主机;

S2、测试主机对接收到的UI截图进行缓存,并分别对每一个测试子项的UI截图进行下述处理:将UI截图之间进行比对,将相似度高于预设值的UI截图剔除一部分,并将剩余的UI截图进行保存以用于APP的测试。

进一步地,在本发明的UI截图测试方法中,还包括步骤:

S3、测试主机将所述剩余的UI截图进行显示输出以供测试人员进行评测;或者,测试主机将剩余的UI截图与预设的标准UI截图进行比对,得出对应的测试子项的测试结果。

进一步地,在本发明的UI截图测试方法中,在步骤S1中,被测终端的测试程序在进行测试时,将测试子项的识别信息与对应的UI截图关联起来后发送至测试主机;所述将剩余的UI截图进行保存具体是指按照测试子项的不同分类进行保存。

进一步地,在本发明的UI截图测试方法中,在步骤S2中,所述将UI截图之间比对具体是指:

以其中一个UI截图作为初始比对集,后续的UI截图分别与比对集中的UI截图进行比对,若后续的UI截图与比对集中的任意一个UI截图之间的相似度高于所述预设值,则将该后续的UI截图剔除,否则将该后续的UI截图加入到比对集中以更新比对集;将最终的比对集中的UI截图作为所述剩余的UI截图。

进一步地,在本发明的UI截图测试方法中,所述将剩余的UI截图与预设的标准UI截图进行比对具体包括:

S21、通过图像识别,识别出所述剩余的UI截图的UI界面中哪些控件被触发以及控件中的输入输出信息;

S22、通过图像识别,识别出所述标准UI截图的UI界面中哪些控件被触发以及控件中的输入输出信息;

S23、将步骤S21识别出的信息与S22识别出的信息进行比对。

本发明为解决其技术问题,还提供了一种APP的UI截图测试系统,包括:

被测终端,用于对于每一个测试子项,分别控制被测终端进行一次或者多次UI截图,并将UI截图发送至测试主机;

测试主机,对接收到的UI截图进行缓存,并分别对每一个测试子项的UI截图进行下述处理:将UI截图之间进行比对,将相似度高于预设值的UI截图剔除一部分,并将剩余的UI截图进行保存以用于APP的测试。

进一步地,在本发明的UI截图测试系统中,还包括步骤:

所述测试主机还用于测试主机将所述剩余的UI截图进行显示输出以供测试人员进行评测;或者,所述测试主机还用于将剩余的UI截图与预设的标准UI截图进行比对,得出对应的测试子项的测试结果。

进一步地,在本发明的UI截图测试系统中,在被测终端中,被测终端的测试程序在进行测试时,将测试子项的识别信息与对应的UI截图关联起来后发送至测试主机;所述将剩余的UI截图进行保存具体是指按照测试子项的不同分类进行保存。

进一步地,在本发明的UI截图测试系统中,在测试主机中,所述将UI截图之间比对具体是指:

以其中一个UI截图作为初始比对集,后续的UI截图分别与比对集中的UI截图进行比对,若后续的UI截图与比对集中的任意一个UI截图之间的相似度高于所述预设值,则将该后续的UI截图剔除,否则将该后续的UI截图加入到比对集中以更新比对集;将最终的比对集中的UI截图作为所述剩余的UI截图。

进一步地,在本发明的UI截图测试系统中,所述将剩余的UI截图与预设的标准UI截图进行比对具体通过下述模块实现:

第一识别模块,用于通过图像识别,识别出所述剩余的UI截图的UI界面中哪些控件被触发以及控件中的输入输出信息;

第二识别模块,用于通过图像识别,识别出所述标准UI截图的UI界面中哪些控件被触发以及控件中的输入输出信息;

信息对比模块,用于将第一识别模块识别出的信息与第二识别模块识别出的信息进行比对。

实施本发明的APP的UI截图测试方法及系统,具有以下有益效果本发明的测试主机能够对接收到的UI截图进行缓存,并分别对每一个测试子项的UI截图进行下述处理:将UI截图之间进行比对,将相似度高于预设值的UI截图剔除一部分,并将剩余的UI截图进行保存以用于APP的测试。如此能够有效减少UI截图的处理数量,降低测试人员的工作量/降低测试主机需要处理的数据,提升测试效率。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是本发明的APP的UI截图测试方法一实施例的流程图。

具体实施方式

为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。

参考图1,其为本发明的APP的UI截图测试方法一实施例的流程图。在本实施例中,该APP的UI截图测试方法包括下述步骤:

S1、对于每一个测试子项,分别控制被测终端进行一次或者多次UI截图,并将UI截图发送至测试主机。在进行APP测试时,往往有很多个子项目需要进行测试,每个子项目测试时需要进行至少一次的截图,被测终端可以是手机,测试主机可以是电脑。UI截图的方式根据手机的不同而不同,如魅族手机的截图是“开机键+音量加/音量减”进行触发,本发明对手机进行UI截图时,可以模拟手机本身的截图触发按键信息,如生成触发信息模拟“开机键+音量加/音量减”。被测终端与测试主机之间可以通过无线方式进行数据的传输,也可以通过有线的方式进行数据传输,如通过串口或者并口线进行数据的传输。数据传输时,是将将测试子项的识别信息与对应的UI截图关联起来后发送至测试主机,即发送的信息可以使得测试主机识别出接收到的UI截图为哪一个测试子项的UI截图。

S2、测试主机对接收到的UI截图进行缓存,并分别对每一个测试子项的UI截图进行下述处理:将UI截图之间进行比对,将相似度高于预设值的UI截图剔除一部分,并将剩余的UI截图进行保存以用于APP的测试。在本步骤中应当理解的是,若对于某一个测试子项的UI截图的数量本身就小于一个数量预设值,则无需提出UI截图。数量预设值优选为2,上述剔除一部分是指相同和相似的UI截图只保留一个。上述将剩余的UI截图进行保存具体是指按照测试子项的不同分类进行保存。

S3、测试主机将所述剩余的UI截图进行显示输出以供测试人员进行评测;或者,测试主机将剩余的UI截图与预设的标准UI截图进行比对,得出对应的测试子项的测试结果。在本步骤中,预设的标准UI截图可以是正常(APP测试未发现APP存在BUG时的)的UI截图,将剩余的UI截图与预设的标准UI截图进行比对,若二者一致,则说明APP测试结果是APP不存在BUG,否则APP测试结果是APP存在BUG。在本步骤中,预设的标准UI截图可以是异常(APP测试发现APP存在BUG时的)的UI截图,将剩余的UI截图与预设的标准UI截图进行比对,若二者一致,则说明APP测试结果是APP存在BUG,否则APP测试结果是APP不存在BUG。应当理解的是,上述预设的标准UI截图可能会具有多个,针对不同的子项的标准UI截图之间可能相同,也可能不同。

在步骤S2中,将UI截图之间比对具体是指:以其中一个UI截图作为初始比对集,后续的UI截图分别与比对集中的UI截图进行比对,若后续的UI截图与比对集中的任意一个UI截图之间的相似度高于所述预设值,则将该后续的UI截图剔除,否则将该后续的UI截图加入到比对集中以更新比对集;将最终的比对集中的UI截图作为所述剩余的UI截图。如UI1(UIK表示第K个UI截图)为初始比对集,当UI2与UI1判断为不相似时,比对集更新为UI1以及UI2,此时UI3此时需要与UI1以及UI2比对,只有UI3与UI1以及UI2均不相似时,才将比对集更新为UI1、UI2以及UI3,其他依次类推,这里不再赘述。

将剩余的UI截图与预设的标准UI截图进行比对具体包括:

S21、通过图像识别,识别出所述剩余的UI截图的UI界面中哪些控件被触发以及控件中的输入输出信息;

S22、通过图像识别,识别出所述标准UI截图的UI界面中哪些控件被触发以及控件中的输入输出信息;

S23、将步骤S21识别出的信息与S22识别出的信息进行比对。

一般来说,UI界面的控件被触发,在UI界面上显示的对应标识(如图标)会被特殊显示(如图标周围出现包围框或者图标颜色加深等),本发明通过识别哪些控件的对应标识被特殊显示来识别哪些控件被触发,控件中输入输出信息则可以直接通过识别控件中输入或者输出的信息得到。

在本发明的另一实施例中,还提供了一种APP的UI截图测试系统,包括:

被测终端,用于对于每一个测试子项,分别控制被测终端进行一次或者多次UI截图,并将UI截图发送至测试主机;

测试主机,对接收到的UI截图进行缓存,并分别对每一个测试子项的UI截图进行下述处理:将UI截图之间进行比对,将相似度高于预设值的UI截图剔除一部分,并将剩余的UI截图进行保存以用于APP的测试。

所述测试主机还用于测试主机将所述剩余的UI截图进行显示输出以供测试人员进行评测;或者,所述测试主机还用于将剩余的UI截图与预设的标准UI截图进行比对,得出对应的测试子项的测试结果。

在被测终端中,被测终端的测试程序在进行测试时,将测试子项的识别信息与对应的UI截图关联起来后发送至测试主机;所述将剩余的UI截图进行保存具体是指按照测试子项的不同分类进行保存。

在测试主机中,所述将UI截图之间比对具体是指:

以其中一个UI截图作为初始比对集,后续的UI截图分别与比对集中的UI截图进行比对,若后续的UI截图与比对集中的任意一个UI截图之间的相似度高于所述预设值,则将该后续的UI截图剔除,否则将该后续的UI截图加入到比对集中以更新比对集;将最终的比对集中的UI截图作为所述剩余的UI截图。

所述将剩余的UI截图与预设的标准UI截图进行比对具体通过下述模块实现:

第一识别模块,用于通过图像识别,识别出所述剩余的UI截图的UI界面中哪些控件被触发以及控件中的输入输出信息;

第二识别模块,用于通过图像识别,识别出所述标准UI截图的UI界面中哪些控件被触发以及控件中的输入输出信息;

信息对比模块,用于将第一识别模块识别出的信息与第二识别模块识别出的信息进行比对。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1