用户界面的自动检测方法和装置技术领域
本发明涉及计算机技术领域,尤其涉及一种用户界面的自动检测方法和装置。
背景技术
目前在IT行业,在开发满足用户自定义需求的用户界面(UI,User Interface)之
前,一般先开发一个公版的用户界面,再在该公版用户界面上进行满足用户自定义需求的
修改(如:增加或者删除公版用户界面上的某个条目,或者修改公版用户界面中的某个条目
中的字符串等)。由于这些修改均在同一个公版用户界面代码中进行,因此很容易出现对界
面的代码块控制不全,导致某次修改连同公版用户界面代码一同修改,从而某一用户所进
行的修改出现在另一用户的用户界面上的现象。公版用户界面代码被修改很容易造成软件
错误崩溃等。因此,为了避免这种由于公版用户界面代码被修改所带来的软件错误崩溃的
现象,现如今采用人工检测的方法对公版用户界面进行检测,该检测过程效率低下,且容易
出现漏检、错检的现象。
发明内容
本发明提出一种用户界面的自动检测方法和装置,能够实现对用户界面进行自动
化检测,从而提高对用户界面进行检测的过程的效率和正确率。
本发明提供的一种用户界面的自动检测方法,具体包括:
根据用户界面信息,渲染并显示所述用户界面信息所对应的用户界面;
获得所述用户界面的界面截图;
计算所述界面截图与标准图片之间的相似度,并将所述相似度与预设的相似度阈
值进行比较,若所述相似度大于所述相似度阈值,则确认所述用户界面正确,否则,生成界
面错误信息。
进一步地,在所述根据用户界面信息,渲染并显示所述用户界面信息所对应的用
户界面之前,还包括:
从配置文件中读取并获得用户界面信息;或者,
发送界面信息获取请求至显示控制装置,并接收所述显示控制装置返回的用户界
面信息。
进一步地,所述用户界面信息中包括自定义配置信息;
则所述根据用户界面信息,渲染并显示所述用户界面信息所对应的用户界面,具
体包括:
根据所述用户界面信息,从待检测软件中获得与所述用户界面信息相对应的用户
界面;
根据所述用户界面信息中的所述自定义配置信息,将所述用户界面中的与所述自
定义配置信息相对应的自定义配置删除;
将删除所述自定义配置后的所述用户界面渲染至显示屏中显示。
进一步地,所述计算所述界面截图与标准图片之间的相似度,并将所述相似度与
预设的相似度阈值进行比较,若所述相似度大于所述相似度阈值,则确认所述用户界面正
确,否则,生成界面错误信息,具体包括:
计算所述界面截图中的各个像素点与所述标准图片中的对应的像素点的色差差
值,并统计所述色差差值大于预设的色差阈值的像素点的个数;
根据统计得到的个数与所述界面截图中的像素点总数的比例,获得相似度;
将所述相似度与所述相似度阈值进行比较,若所述相似度大于所述相似度阈值,
则确定所述用户界面正确,否则,生成所述界面错误信息。
进一步地,所述用户界面信息包括界面识别码和界面路径信息。
相应地,本发明还提供了一种用户界面的自动检测装置,具体包括:
用户界面显示模块,用于根据用户界面信息,渲染并显示所述用户界面信息所对
应的用户界面;
界面截图获得模块,用于获得所述用户界面的界面截图;以及,
比较检测模块,用于计算所述界面截图与标准图片之间的相似度,并将所述相似
度与预设的相似度阈值进行比较,若所述相似度大于所述相似度阈值,则确认所述用户界
面正确,否则,生成界面错误信息。
进一步地,所述用户界面的自动检测装置,还包括:
界面信息读取模块,用于从配置文件中读取并获得用户界面信息;或者,
界面信息接收模块,用于发送界面信息获取请求至显示控制装置,并接收所述显
示控制装置返回的用户界面信息。
进一步地,所述用户界面信息中包括自定义配置信息;
所述用户界面显示模块,具体包括:
用户界面获得单元,用于根据所述用户界面信息,从待检测软件中获得与所述用
户界面信息相对应的用户界面;
自定义配置删除单元,用于根据所述用户界面信息中的所述自定义配置信息,将
所述用户界面中的与所述自定义配置信息相对应的自定义配置删除;以及,
界面渲染显示单元,用于将删除所述自定义配置后的所述用户界面渲染至显示屏
中显示。
进一步地,所述比较检测模块,具体包括:
差异像素点统计单元,用于计算所述界面截图中的各个像素点与所述标准图片中
的对应的像素点的色差差值,并统计所述色差差值大于预设的色差阈值的像素点的个数;
相似度获得单元,用于根据统计得到的个数与所述界面截图中的像素点总数的比
例,获得相似度;以及,
相似度判断单元,用于将所述相似度与所述相似度阈值进行比较,若所述相似度
大于所述相似度阈值,则确定所述用户界面正确,否则,生成所述界面错误信息。
进一步地,所述用户界面信息包括界面识别码和界面路径信息。
实施本发明,具有如下有益效果:
本发明提供的用户界面的自动检测方法及装置,由于通过设备根据用户界面信息
自动地控制用户界面的切换和显示,并自动截取该用户界面的界面截图,将该界面截图与
标准图片进行比较,因此能够实现对用户界面进行自动化检测,从而提高对用户界面进行
检测的过程的效率和正确率,同时降低人工成本。
附图说明
图1是本发明提供的用户界面的自动检测方法的一个实施例的流程示意图;
图2是本发明提供的用户界面的自动检测方法中一个实施例中的一个界面截图和
相对应的标准图片的示意图;
图3是本发明提供的用户界面的自动检测装置的一个实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于
本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
参见图1,是本发明提供的用户界面的自动检测方法的一个实施例的流程示意图,
包括步骤S11至S13,具体如下:
S11:根据用户界面信息,渲染并显示所述用户界面信息所对应的用户界面;
S12:获得所述用户界面的界面截图;
S13:计算所述界面截图与标准图片之间的相似度,并将所述相似度与预设的相似
度阈值进行比较,若所述相似度大于所述相似度阈值,则确认所述用户界面正确,否则,生
成界面错误信息。
需要说明的是,在本发明实施例中,设备在安装好软件之后,控制切换并显示软件
中的不同用户界面,并获得相应的用户界面截图,随后,将获得的该用户界面截图与相应的
标准图片进行比较,若用户界面截图与标准图片的相似度高,则确认该用户界面正确,否
则,确认该用户界面错误,并生成相应的界面错误信息。
在一个优选地实施方式中,设备在安装好待检测软件之后,获取用户界面信息,并
根据该用户界面信息,从该待检测软件中获得与该用户界面信息相对应的用户界面,并将
该用户界面渲染和显示至设备的显示屏中。随后,设备启动截图功能,获得该用户界面的界
面截图。最后,设备计算该界面截图与相对应的标准图片之间的相似度,并将该相似度与预
设的相似度阈值进行比较,若该相似度大于该相似度阈值,则确认所检测的用户界面正确,
否则,这确认所检测的用户界面错误,并生成相应的界面错误信息,并将该界面错误信息发
送至相应的负责人员,以使负责人员在接收到该界面错误信息之后根据该界面错误信息对
所检测的用户界面进行修复。其中,标准图片预先设置并存储于设备中,且每个标准图片分
别与待检测软件中的一个用户界面相对应。设备在将界面截图与标准图片进行比较之前,
根据用户界面信息读取与待检测的用户界面相对应的标准图片。
特别地,设备中包括测试主板和上位机,上述方法可以由测试主板和上位机共同
完成。当采用U盘方式进行软件烧录时,测试主板若检测到有U盘连接至本机,则自动烧录该
U盘中的程序,从而将待检测软件烧录至本机中。待烧录完成后,测试主板从U盘或者上位机
中获取用户界面信息,从而根据该用户界面信息渲染并显示待检测软件中的相应的用户界
面。随后,测试主板通知上位机已完成用户界面显示,并将相应的用户界面信息发送至上位
机,从而使上位机通过抓取测试主板中的LVDS信号的方式截取获得界面截图,并根据接收
获得的用户界面信息查找到相应的标准图片。最后,上位机计算该标准图片和截取获得的
界面截图之间的相似度,并将该相似度与预设的相似度阈值进行比较,若该相似度大于该
相似度阈值,则确认所检测的用户界面正确,不作处理,否则,确认所检测的用户界面错误,
生成相应的界面错误信息,并将该界面错误信息发送给相应的负责人员,以使该负责人员
根据该界面错误信息对所检测的用户界面进行修改。可以理解的是,测试主板还可以采用
其他方式进行软件烧录,如通过网络传输、串口通信等方式获得待检测软件的程序,从而将
待检测软件烧录至本机中。
由于通过设备根据用户界面信息自动地控制用户界面的切换和显示,并自动截取
该用户界面的界面截图,将该界面截图与标准图片进行比较,因此能够实现对用户界面进
行自动化检测,从而提高对用户界面进行检测的过程的效率和正确率,同时降低人工成本。
进一步地,在所述根据用户界面信息,渲染并显示所述用户界面信息所对应的用
户界面之前,还包括:
从配置文件中读取并获得用户界面信息;或者,
发送界面信息获取请求至显示控制装置,并接收所述显示控制装置返回的用户界
面信息。
需要说明的是,设备在根据用户界面信息渲染并显示相应的用户界面之前,需要
从配置文件中或者从显示控制装置中获得用户界面信息。用户界面信息可以通过设备读取
配置文件中的信息获得,也可以通过设备发送界面信息获取请求至显示控制装置,并接收
显示控制装置返回的信息获得。
特别地,本发明实施例还可以由测试主板和上位机共同完成。当采用U盘方式将待
检测软件烧录至测试主板时,配置文件预先存储于U盘中,因此测试主板可以通过读取U盘
中的配置文件获得用户界面信息,也可以通过发送界面信息获取请求至上位机,并接收上
位机通过IIC或者串口等通信方式返回的信息获得。可以理解的是,测试主板还可以通过网
络传输、串口通信等方式获得配置文件。
在另一个优选地实施方式中,所述用户界面信息中包括自定义配置信息;
则所述根据用户界面信息,渲染并显示所述用户界面信息所对应的用户界面,具
体包括:
根据所述用户界面信息,从待检测软件中获得与所述用户界面信息相对应的用户
界面;
根据所述用户界面信息中的所述自定义配置信息,将所述用户界面中的与所述自
定义配置信息相对应的自定义配置删除;
将删除所述自定义配置后的所述用户界面渲染至显示屏中显示。
需要说明的是,当用户界面中还包括用户自定义生成的自定义配置时,在将该用
户界面渲染至显示屏中显示之前,还需要将该用户界面中的自定义配置删除。当用户界面
中还包括自定义配置时,用户界面信息中包括该自定义配置所对应的自定义配置信息。设
备在根据用户界面信息从待检测软件中获得与该用户界面信息相对应的用户界面之后,根
据该用户界面信息中的自定义配置信息将该用户界面中的自定义配置删除,并将该删除自
定义配置后的用户界面渲染至显示屏中显示。
例如,某一用户界面中包括一个由某一用户自定义添加的条目,则用户界面信息
中包括该条目的条目信息(如:该条目的ID等)。设备在从待测试软件中获得该用户界面之
后,根据该用户界面信息中的条目信息将该条目从用户界面中删除,并将删除了该条目的
用户界面渲染至显示屏中显示。
由于通过将用户界面中的自定义配置删除,从而保证进行检测时的用户界面中的
配置为原始配置,从而可以通过与标准图片进行比较的方式检测该用户界面正确与否,因
此能够进一步保证检测结果的正确性。
进一步地,所述计算所述界面截图与标准图片之间的相似度,并将所述相似度与
预设的相似度阈值进行比较,若所述相似度大于所述相似度阈值,则确认所述用户界面正
确,否则,生成界面错误信息,具体包括:
计算所述界面截图中的各个像素点与所述标准图片中的对应的像素点的色差差
值,并统计所述色差差值大于预设的色差阈值的像素点的个数;
根据统计得到的个数与所述界面截图中的像素点总数的比例,获得相似度;
将所述相似度与所述相似度阈值进行比较,若所述相似度大于所述相似度阈值,
则确定所述用户界面正确,否则,生成所述界面错误信息。
需要说明的是,设备在比较界面截图和标准图片之间的相似程度时,首先,分别比
较界面截图的长和宽与标准图片的长和宽是否相等,若界面截图的长与标准图片的长不相
等或者界面截图的宽与标准图片的宽不相等,则确认所检测的用户界面错误,并生成相应
的界面错误信息,否则,统计界面截图与标准图片之间的色差较大的像素点的总数,即,计
算界面截图中的各个像素点与标准图片中的对应的像素点的色差差值,并将该色差差值与
预设的色差阈值进行比较,若某一像素点所对应的色差差值大于该色差阈值,则界面截图
与标准图片之间的色差较大的像素点的总数加1。随后,根据统计获得的界面截图与标准图
片之间的色差较大的像素点的总数,计算该总数与界面截图中的像素点的总数的比例,从
而获得相似度。最后,将计算获得的相似度与预设的相似度阈值进行比较,若该相似度大于
该相似度阈值,则确认所检测的用户界面正确,不作处理,否则,确认所检测的用户界面错
误,并生成相应的界面错误信息。
如图2所示,为一个界面截图和相对应的标准图片的示意图。可以理解的是,所示
的界面截图与所示的标准图片之间的色差相差较大的像素点较多,因此该界面截图与该标
准图片之间的相似程度小,设备在比较获得该界面截图和该标准图片之间的相似程度之
后,确认该界面截图所对应的用户界面错误,并生成相应的界面错误信息,并将该界面错误
信息发送至相应的负责人员以使该负责人员对该用户界面进行处理。
由于通过计算界面截图与标准图片之间的对应的像素点之间的色差差值,从而获
得界面截图与标准图片之间的相似程度,因此该相似程度获得的过程简单,能够进一步提
高对用户界面进行检测的过程的效率。
进一步地,所述用户界面信息包括界面识别码和界面路径信息。
需要说明的是,用户界面信息中包括界面识别码和界面路径信息等。因此,设备能
够根据该用户界面信息中的界面路径信息从待检测软件中获得相应的用户界面,并将该用
户界面渲染并显示至显示屏中。相应地,设备能够根据该用户界面信息中的界面识别码获
得与该用户界面相对应的标准图片。
本发明实施例提供的用户界面的自动检测方法,由于通过设备根据用户界面信息
自动地控制用户界面的切换和显示,并自动截取该用户界面的界面截图,将该界面截图与
标准图片进行比较,因此能够实现对用户界面进行自动化检测,从而提高对用户界面进行
检测的过程的效率和正确率,同时降低人工成本。由于通过将用户界面中的自定义配置删
除,从而保证进行检测时的用户界面中的配置为原始配置,从而可以通过与标准图片进行
比较的方式检测该用户界面正确与否,因此能够进一步保证检测结果的正确性。另外,由于
通过计算界面截图与标准图片之间的对应的像素点之间的色差差值,从而获得界面截图与
标准图片之间的相似程度,因此该相似程度获得的过程简单,能够进一步提高对用户界面
进行检测的过程的效率。
相应地,本发明还提供一种用户界面的自动检测装置,能够实现上述实施例中的
用户界面的自动检测方法的所有流程。
参见图3,是本发明提供的用户界面的自动检测装置的一个实施例的结构示意图,
具体如下:
用户界面显示模块31,用于根据用户界面信息,渲染并显示所述用户界面信息所
对应的用户界面;
界面截图获得模块32,用于获得所述用户界面的界面截图;以及,
比较检测模块33,用于计算所述界面截图与标准图片之间的相似度,并将所述相
似度与预设的相似度阈值进行比较,若所述相似度大于所述相似度阈值,则确认所述用户
界面正确,否则,生成界面错误信息。
进一步地,所述用户界面的自动检测装置,还包括:
界面信息读取模块,用于从配置文件中读取并获得用户界面信息;或者,
界面信息接收模块,用于发送界面信息获取请求至显示控制装置,并接收所述显
示控制装置返回的用户界面信息。
在另一个优选地实施方式中,所述用户界面信息中包括自定义配置信息;
所述用户界面显示模块31,具体包括:
用户界面获得单元,用于根据所述用户界面信息,从待检测软件中获得与所述用
户界面信息相对应的用户界面;
自定义配置删除单元,用于根据所述用户界面信息中的所述自定义配置信息,将
所述用户界面中的与所述自定义配置信息相对应的自定义配置删除;以及,
界面渲染显示单元,用于将删除所述自定义配置后的所述用户界面渲染至显示屏
中显示。
进一步地,所述比较检测模块33,具体包括:
差异像素点统计单元,用于计算所述界面截图中的各个像素点与所述标准图片中
的对应的像素点的色差差值,并统计所述色差差值大于预设的色差阈值的像素点的个数;
相似度获得单元,用于根据统计得到的个数与所述界面截图中的像素点总数的比
例,获得相似度;以及,
相似度判断单元,用于将所述相似度与所述相似度阈值进行比较,若所述相似度
大于所述相似度阈值,则确定所述用户界面正确,否则,生成所述界面错误信息。
进一步地,所述用户界面信息包括界面识别码和界面路径信息。
本发明实施例提供的用户界面的自动检测装置,由于通过设备根据用户界面信息
自动地控制用户界面的切换和显示,并自动截取该用户界面的界面截图,将该界面截图与
标准图片进行比较,因此能够实现对用户界面进行自动化检测,从而提高对用户界面进行
检测的过程的效率和正确率,同时降低人工成本。由于通过将用户界面中的自定义配置删
除,从而保证进行检测时的用户界面中的配置为原始配置,从而可以通过与标准图片进行
比较的方式检测该用户界面正确与否,因此能够进一步保证检测结果的正确性。另外,由于
通过计算界面截图与标准图片之间的对应的像素点之间的色差差值,从而获得界面截图与
标准图片之间的相似程度,因此该相似程度获得的过程简单,能够进一步提高对用户界面
进行检测的过程的效率。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员
来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也视为
本发明的保护范围。