CN108579094B - 一种用户界面检测方法及相关装置、***和存储介质 - Google Patents
一种用户界面检测方法及相关装置、***和存储介质 Download PDFInfo
- Publication number
- CN108579094B CN108579094B CN201810449670.XA CN201810449670A CN108579094B CN 108579094 B CN108579094 B CN 108579094B CN 201810449670 A CN201810449670 A CN 201810449670A CN 108579094 B CN108579094 B CN 108579094B
- Authority
- CN
- China
- Prior art keywords
- image
- user interface
- target
- terminal
- detection
- 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.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例提供了一种用户界面检测方法及相关装置、***和存储介质,其中方法包括:获取第一图像,第一图像是终端集合包括的第一终端对显示的目标用户界面所截取的图像,第一终端显示的目标用户界面是第一终端在执行为目标应用设置的脚本文件时显示的界面;获取第二图像,第二图像是终端集合包括的第二终端对显示的目标用户界面所截取的图像,第二终端显示的目标用户界面是第二终端在执行为目标应用设置的脚本文件时显示的界面;对第一图像和第二图像进行分析,得到分析结果,根据分析结果得到关于目标用户界面的检测结果。通过本发明实施例可以有效提高用户界面检测的效率,实现用户界面检测的自动化。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种用户界面检测方法及相关装置、***和存储介质。
背景技术
随着智能终端技术和计算机应用技术的发展,各类应用程序已广泛应用于各种移动终端(例如智能手机和平板电脑)上,应用程序可以提供多姿多彩的用户界面。在应用程序上线之前,需要对应用程序的用户界面进行适配检测。例如,在手游(包括单机手游和网络手游)的适配检测过程中,需要检测人员检查游戏界面在各种终端设备下是否显示正常。
游戏界面显示异常可能有以下多种情况,例如文字缺失或乱码显示、色块填充、出现错误的纹理、层次排布错乱等。现有的图像检测方式难以自动检测游戏界面是显示正常还是显示异常,往往需要人工进行逐一判定,从而会导致手游的适配检测需要投入众多人力,效率低。故而如何提高手游的适配检测效率是目前亟需解决的问题。
发明内容
本发明实施例提供了一种用户界面检测方法及相关装置、***和存储介质,可以有效提高用户界面检测的效率,实现用户界面检测的自动化。
一方面,本发明实施例提供了一种用户界面检测方法,所述方法包括:
获取第一图像,所述第一图像是终端集合包括的第一终端对显示的目标用户界面所截取的图像,所述第一终端显示的目标用户界面是所述第一终端在执行为目标应用设置的脚本文件时显示的界面;
获取第二图像,所述第二图像是所述终端集合包括的第二终端对显示的目标用户界面所截取的图像,所述第二终端显示的目标用户界面是所述第二终端在执行为所述目标应用设置的脚本文件时显示的界面;
对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果;
其中,所述目标应用被安装在所述终端集合包括的终端上。
另一方面,本发明实施例提供了一种用户界面检测装置,所述用户界面检测装置包括:
获取单元,用于获取第一图像,所述第一图像是终端集合包括的第一终端对显示的目标用户界面所截取的图像,所述第一终端显示的目标用户界面是所述第一终端在执行为目标应用设置的脚本文件时显示的界面;
所述获取单元,还用于获取第二图像,所述第二图像是所述终端集合包括的第二终端对显示的目标用户界面所截取的图像,所述第二终端显示的目标用户界面是所述第二终端在执行为所述目标应用设置的脚本文件时显示的界面;
分析单元,用于对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果。
再一方面,本发明实施例提供了一种检测终端,包括:处理器、通信接口和存储器,所述存储器存储有可执行程序代码,所述通信接口受所述处理器的控制用于收发信息,所述处理器用于调用所述可执行程序代码,执行上述用户界面检测方法。
相应地,本发明实施例提供了一种用户界面检测***,包括:检测终端和包括至少两个终端的终端集合,所述检测终端用于执行上述用户界面检测方法。
相应地,本发明实施例还提供了一种存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述用户界面检测方法。
相应地,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述用户界面检测方法。
本发明实施例中,终端通过执行脚本文件,自动对用户界面进行截图得到目标图像,检测终端自动对该目标图像进行分析检测,得到关于目标用户界面的检测结果,从而可以实现用户界面检测的自动化,有效提高用户界面检测的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的一种用户界面检测***的架构示意图;
图1b是本发明第一实施例提供的一种用户界面检测方法的流程示意图;
图2a是本发明实施例提供的一种脚本文件的示意图;
图2b是本发明实施例提供的一种脚本文件对应视图的示意图;
图3是本发明第二实施例提供的一种用户界面检测方法的流程示意图;
图4a是本发明实施例提供的一种图像排序结果的示意图;
图4b是本发明实施例提供的一种图像分类结果的示意图;
图5是本发明实施例提供的一种显示界面的示意图;
图6是本发明实施例提供的一种用户界面检测装置的结构示意图;
图7是本发明实施例提供的一种检测终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
本发明实施例提供了一种用户界面检测方法,应用于检测终端,检测终端用于对目标应用中的用户界面进行检测,目标应用被安装在终端集合包括的各个终端上。本发明实施例提供一种脚本录制工具,用于自动录制关于目标应用的脚本文件。终端集合包括的终端用于执行关于目标应用的脚本文件,并在执行脚本文件时自动对显示的目标应用中的用户界面进行图像截取,得到目标图像,并将得到的目标图像发送给检测终端。检测终端自动对接收到的目标图像进行分析检测,包括对目标图像进行图像数据量计算、颜色聚集程度判定、直方图比较、轮廓比较或文字比较等检测操作,从而得到关于目标应用中的用户界面的检测结果。采用上述方式,可以有效提高用户界面检测的效率,满足用户界面检测的自动化以及智能化需求。
请参阅图1,图1为本发明实施例提供的一种用户界面检测***的架构示意图,本发明实施例提供的用户界面检测***包括检测终端101、终端集合和脚本录制工具104。终端集合包括第一终端102、第二终端103和终端105,终端105可以包括一个或者多个终端。检测终端101、第一终端102、第二终端103、脚本录制工具104和终端105通过网络(例如互联网)连接。其中,检测终端101用于对目标应用中的用户界面进行检测,该目标应用被安装在终端集合包括的各个终端上,也即是说,该目标应用被安装在第一终端102、第二终端103和终端105上,目标应用例如可以是游戏应用。检测终端101可以是云端服务器,也可以是智能手机、平板电脑、笔记本、移动互联网设备(Mobile Internet Device,MID)等智能终端。
脚本录制工具104用于自动录制关于目标应用的脚本文件。终端集合包括的终端用于执行关于目标应用的脚本文件,并在执行脚本文件时自动对显示的目标应用中的用户界面进行图像截取,得到目标图像,并将得到的目标图像发送给检测终端101。检测终端101对接收到的目标图像进行分析检测,得到关于目标应用中的用户界面的检测结果。终端集合包括的终端可以是智能手机、平板电脑、笔记本、移动互联网设备等可以安装并运行目标应用的智能终端。
请一并参阅图1b,图1b为本发明第一实施例提供的一种用户界面检测方法的流程示意图,包括以下步骤:步骤101、脚本录制工具104录制关于目标应用的脚本文件。脚本录制工具可以设置于个人工作平台(例如Windows***或Mac***的个人电脑)上,通过在个人工作平台上运行该脚本录制工具自动完成关于目标应用的脚本文件的录制。其中,该脚本文件可以在Windows***、Linux***或者Mac***下执行。请一并参见图2a和图2b,图2a为脚本录制工具录制的脚本文件的示意图,图2b为脚本文件对应的视图的示意图。例如,图2a中第6行代码“click(‘14_49_26.430000.jpg’)”中,‘14_49_26.430000.jpg’对应图2b中的特征图像201,特征图像201为第6行代码对应的用户界面202中的场景特征。
在一实施例中,脚本录制工具录制的脚本文件中的每一代码行对应一个操作函数,例如点击操作函数(click)、长按操作函数(longClick)、滑动操作函数(slide)、轨迹移动函数(swipe)等,并且每一代码行仅有一个操作函数,但需排除sleep函数对应的代码行,因为延时函数(sleep)不产生操作。另外,不允许在脚本文件中存在循环或判断等条件逻辑,但可以在代码中的函数中加入条件逻辑等。对脚本文件进行上述限定,可以保证脚本文件所指示的操作顺序是确定的。只有这样,才能保证终端在按脚本文件所指示的操作顺序执行相应的操作时,所有的终端都出现相同的特征场景,且执行相同的操作,这就为多个终端的同一特征场景的横向比较提供确定的保证。
在一实施例中,如果终端在执行脚本文件的过程中出现突发情况,导致不能按执行脚本文件所指示的既有操作顺序执行,检测终端101可以提供人工干预方式以解决突发情况,使得脚本文件按照原有的操作顺序执行。需要说明的是,用户界面中的场景特征可以是一张特征图像,也可以是该特征图像的标识值(例如特征图像的哈希值等),还可以用多张特征图像图片来标识该用户界面的唯一性。用户界面中的场景特征要求在用户界面对应的场景下具有唯一性。
步骤102、检测终端101首先从终端集合中选定用于执行脚本文件的目标终端(例如50个终端),也即是确定用于进行用户界面检测的多个终端。目标终端包括第一终端102和第二终端103。然后检测终端101向目标终端发送检测启动指令,该检测启动指令用于指示目标终端开始进行用户界面检测,也即是执行该脚本文件。
步骤103、目标终端获取到脚本文件之后,执行该脚本文件,并自动对目标终端在执行该脚本文件时显示的用户界面进行图像截取,得到关于用户界面的目标图像。当目标终端执行到脚本文件的某一行脚本时,例如图2a中第6行click(‘14_49_26.430000.jpg’)”,目标终端会首先先判断目标应用的用户界面中是否存在特征图像201,如果存在,则在目标终端的用户点击特征图像201对应的按钮前,对当前目标终端显示的用户界面进行截图,得到特征图像201对应的用户界面的目标图像。其中,目标终端可以将用户界面中的特征图像进行标识,例如用红线框进行标识,以突出显示用户界面中的特征图像。
进一步地,目标终端将获取到的目标图像发送给检测终端101。目标终端可以是每获取到关于用户界面的一张目标图像之后,即将获取到的一张目标图像发送给检测终端101。目标终端也可以是在执行完脚本文件之后,将获取到的所有关于用户界面的目标图像一并发送给检测终端101。
在一实施例中,目标终端将获取到的目标图像发送给检测终端101时,可以一并将目标图像的附加信息发送给检测终端。目标图像的附加信息包括标识信息、目标图像的数据量、尺寸信息、以及发送给检测终端101的时间等信息。其中,标识信息可以是代码行信息,代码行信息也即是目标图像对应的脚本文件的代码行,假设目标图像对应的脚本文件的代码行为6,则表示目标终端是在执行脚本文件的第6行代码时截取到目标图像的。目标图像的数据量也即是目标图像所占用的存储空间的大小,目标图像的尺寸信息包括目标图像的长宽信息。目标图像的长宽信息可以是以像素为单位的长和宽。
需要说明的是,本发明实施例可以约定截取的目标图像的图像分辨率为预设分辨率(例如800*450),且分辨率以像素为单位。如果目标图像的图像分辨率不为预设分辨率,目标终端或者检测终端可以将目标图像的图像分辨率调整为预设分辨率。
在一实施例中,目标终端获取脚本文件的具体方式为:脚本录制工具104在完成关于目标应用的脚本文件的录制之后,将脚本文件发送给检测终端101,检测终端101从终端集合中选定目标终端之后,将脚本文件发送给目标终端。或者,目标终端直接从录制脚本文件的个人工作平台上获取脚本文件。
步骤104、检测终端101对目标图像进行分析,并根据分析结果得到关于用户界面的检测结果。在各个目标终端都执行完脚本文件之后,检测终端101接收到多个目标终端发送的多张目标图像。检测终端101首先根据目标图像对应的脚本文件的代码行从接收到的多张目标图像中,确定出对应脚本文件的目标代码行的目标图像。其中,目标代码行对应目标应用中的目标用户界面,目标代码行是脚本文件中的任意代码行。检测终端101然后对对应脚本文件的目标代码行的目标图像进行分析检测,得到关于目标用户界面的检测结果。在一实施例中,检测终端101可以将同一目标终端发送的目标图像存储到同一个文件夹中,并用目标终端的标识信息对该文件夹进行标识。
在一实施例中,检测终端101可以包括交互平台和检测平台,交互平台可以是用于辅助自动化用户界面检测执行的万维网(World Wide Web,Web)网站,交互平台用于存储目标终端发送的目标图像,并对目标图像进行分析检测,得到关于目标用户界面的检测结果。检测平台用于接收并存储脚本录制工具录制的关于目标应用的脚本文件,还用于从终端集合中选定用于执行脚本文件的目标终端,并启动用户界面检测。检测平台还可以用于将脚本文件下发到目标终端。
下面将详细介绍图像的分析检测过程,以及根据分析结果得到关于用户界面的检测结果的过程。请一并参阅图3,图3为本发明第二实施例提供的一种用户界面检测方法的流程示意图。本发明实施例中所描述的用户界面检测方法包括:
S301、检测终端获取第一图像,所述第一图像是终端集合包括的第一终端对显示的目标用户界面所截取的图像,所述第一终端显示的目标用户界面是所述第一终端在执行为目标应用设置的脚本文件时显示的界面。
S302、所述检测终端获取第二图像,所述第二图像是所述终端集合包括的第二终端对显示的目标用户界面所截取的图像,所述第二终端显示的目标用户界面是所述第二终端在执行为所述目标应用设置的脚本文件时显示的界面。
本发明实施例中,在各个目标终端都执行完脚本文件之后,检测终端接收到多个目标终端发送的多张目标图像,目标图像是终端集合包括的终端在执行脚本文件时对显示的用户界面所截取的图像。检测终端首先获取目标图像和目标图像的附加信息,附加信息包括标识信息,该标识信息可以是代码行信息,该代码行信息用于表示目标图像对应的脚本文件的代码行。然后,检测终端按照目标图像对应的脚本文件的代码行对目标图像进行分类,将对应同一目标代码行的目标图像归为同一类图像,终端集合包括的终端在执行该目标代码行时显示目标用户界面。
在一种可行的实施方式中,检测终端按照目标图像对应的代码行对目标图像进行分类的具体方式为:检测终端首先把目标终端对应的目标图像按截取的先后顺序进行排序。请一并参见图4a,图4a为目标图像的排序结果的示意图,如图4a所示,选取3个目标终端,并展示每个目标终端的2张目标图像。第一列为第一目标终端对应的2张目标图像的排序结果,第二列为第二目标终端对应的的2张目标图像的排序结果,第三列为第三目标终端对应的2张目标图像的排序结果。由于每个目标终端执行脚本文件时的执行环境并非完全一样,故而会导致每个目标终端对应的的目标图像的数量和顺序也并非完全相同,图4a中第三终端对应的2张目标图像就和第一终端以及第二终端对应的2张目标图像的顺序不一样。
进一步地,检测终端然后将目标图像按同一脚本代码行并排对齐,也即是,将对应脚本文件的同一目标代码行的目标图像并排对齐,从而使得每一行的目标图像为同一类图像,同一类图像对应相同的用户界面,具备相同的场景特征。其中,目标代码行对应目标应用中的目标用户界面,目标代码行是脚本文件中的任意代码行。请一并参见图4b,图4b为图4a中的目标图像并排对齐后的示意图,也即是目标图像的分类结果的示意图。如图4b所示,将图4a中第三目标终端的第一张图像和第一目标终端的第二张图像并排对齐,以及将图4a中第三目标终端的第二张目标图像和第二目标终端的第一张目标图像并排对齐。其中,图4b中第一行的目标图像为同一类图像,且对应目标应用的同一目标用户界面,第二行的目标图像也为同一类图像,且对应目标应用的同一目标用户界面。
进一步地,检测终端根据分类结果分别对同一类的图像进行分析检测,得到该类图像对应的目标用户界面的检测结果。检测终端首先获取目标类别下图像的图像数目,目标类别为分类得到的多个类别中的任意一个类别。若目标类别下的目标图像的图像数目为1,则检测目标类别下的一张目标图像的数据量是否小于预设数据量阈值,也即是检测该一张目标图像所占用的存储空间是否小于预设存储空间大小阈值(例如25k字节)。若该一张目标图像的数据量小于预设数据量阈值,检测终端则确定该一张目标图像可能为黑屏或白屏,是一张异常图像,并确定目标类别下的图像对应的目标用户界面的检测结果为第一异常结果。若该一张目标图像的数据量大于或等于预设数据量阈值,则确定该一张目标图像为正常图像,目标类别下的图像对应的目标用户界面的检测结果为显示正常。
进一步地,若目标类别下的目标图像的图像数目为N,则检测终端获取第一图像以及获取第二图像,其中,N为大于或等于2的正整数。检测终端从目标类别下的图像中获取待检测图像,并将该待检测图像作为第一图像,该待检测图像为目标类别下的图像中的任意一张有效(例如非空)图像。检测终端获取目标类别下的图像中除该待检测图像外的任意一张图像作为对比图像,并判断该对比图像是否满足预设对比条件。若该对比图像的数据量大于或等于预设数据量阈值,且该对比图像和待检测图像之间的尺寸差异在预设尺寸差异阈值内,检测终端则确定该对比图像满足预设对比条件,并将该对比图像作为第二图像。
其中,若该对比图像的数据量小于预设数据量阈值,检测终端则确定该对比图像不满足预设对比条件,并确定目标类别下的图像对应的目标用户界面的检测结果为第一异常结果。若该对比图像的数据量大于或等于预设数据量阈值,检测终端则进一步判断该对比图像和待检测图像之间的尺寸差异是否在预设尺寸差异阈值内。检测终端将该对比图像和待检测图像的长和宽进行比较,若该对比图像和待检测图像的长和/或宽的差值的绝对值大于或等于预设像素阈值(例如50个像素),则确定该对比图像和待检测图像之间的尺寸差异在预设尺寸差异阈值外,该对比图像不满足预设对比条件,并确定目标类别下的图像对应的目标用户界面的检测结果为第一异常结果。需要说明的是,只要图像之间的长或者宽相差预设像素阈值,则说明图像之间的长或宽相差过大,可能一个是横屏,一个是竖屏,则此时无法进行图像比较,则直接确定目标类别下的图像对应的目标用户界面的检测结果为第一异常结果。
在一种可行的实施方式中,若目标类别下的目标图像的图像数目为N,则检测终端检测目标类别下的每一张目标图像的数据量是否小于预设数据量阈值。若目标类别下的图像中存在数据量小于预设数据量阈值的目标图像,则检测终端确定目标类别下的图像对应的目标用户界面的检测结果为第一异常结果。
在一实施例中,该待检测图像也可以为该目标类别下的图像中任意一张数据量大于或等于预设数据量阈值的目标图像。在检测终端对每个目标终端的目标图像按截取顺序排序,并将对应同一脚本代码行的目标图像并排对齐的过程中,若某个目标终端的某一行具有多张目标图像,则检测终端按截取顺序只取第1张目标图像进行排序,并忽略同行数的其他目标图像。若某个目标终端在某一行为空,也即是该行缺失图像,则检测终端将该目标终端的该行置为空。可以用下划线表示相应位置无对应的图像。
S303、所述检测终端对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果。
本发明实施例中,目标用户界面的检测结果是关于目标用户界面的显示效果的检测结果。检测终端对第一图像和第二图像进行轮廓比较。首先,检测终端将第一图像由彩色图像转换为灰度图像,并进行高斯滤波去除该灰度图像的噪点,再将去除噪点后的灰度图像转换为二值化图像。同理可以得到第二图像的二值化图像。在一个实施例中,可以使用自适应阈值化函数(adaptiveThreshold)将灰度图像转换为二值化图像,也可以依据实际情况采用其他二值化方法将灰度图像转换为二值化图像,本发明实施例不作限定。然后,检测终端根据第一图像的二值化图像计算得到第一图像的第一轮廓集合(例如集合C1),并根据第二图像的二值化图像计算得到第二图像的第二轮廓集合(例如集合C2)。
进一步地,检测终端将第一轮廓集合中的轮廓与第二轮廓集合中的轮廓进行比较,得到第一图像和第二图像的相似轮廓总数量。检测终端首先将第一轮廓集合和第二轮廓集合中的每个轮廓按照在相应图像中的坐标顺序从上到下、从左到右排序;然后按照排序顺序,从第一轮廓集合中取出1个轮廓L1,从第二轮廓集合中取出1个轮廓L2,依次比较轮廓L1和轮廓L2是否相似;如果轮廓L1和轮廓L2相似,则相似轮廓总数量的值加1。
在一实施例中,比较轮廓L1和轮廓L2是否相似的比较方式如下:检测终端首先检测L1和L2的长或宽的差值是否在第一预设差值阈值内。如果L1和L2的长或宽的差值在第一预设差值阈值外,则按照排序顺序再从第二轮廓集合中取下一个轮廓与L1进行比较。例如,当其中一个轮廓的长或宽是另一个轮廓的2倍时,则确定两者差值在第一预设差值阈值外。如果L1和L2的长或宽的差值在第一预设差值阈值内,则再检查L1和L2的坐标差值是否在第二预设差值阈值内。如果L1和L3的坐标差值在第二预设差值阈值外,则按照排序顺序再从第二轮廓集合中取下一个轮廓与L1进行比较。例如,当L1和L2的坐标差值超过50个像素时,则确定L1和L2的坐标差值在第二预设差值阈值外。如果L1和L2的坐标差值在第二预设差值阈值内,则将轮廓L1和L2进行比较,得到轮廓L1和L2的轮廓比较结果。如果轮廓L1和L2的轮廓比较结果小于设定的阈值(例如10),则检测终端确定轮廓L1和L2相似;如果轮廓L1和L2的轮廓比较结果大于或等于设定的阈值,则检测终端确定轮廓L1和L2不相似。
进一步地,当轮廓L1和L2比较完成之后,检测终端然后从第一轮廓集合中再取下一个轮廓,与第二轮廓集合中取的轮廓再进行如上述方式的轮廓比较。当第一轮廓集合中的所有轮廓和第二集合中的轮廓进行轮廓比较完成之后,检测终端得到第一图像和第二图像的相似轮廓总数量。其中,检测终端可以使用matchShapes方法(一种用于匹配轮廓的方法)对轮廓L1和L2进行比较,得到轮廓L1和L2的轮廓比较结果,其中,该matchShapes方法使用的是CONTOURS_MATCH_I1参数对应的比较模式。
进一步地,检测终端根据第一轮廓集合和第二轮廓集合中的轮廓的总数量以及该相似轮廓总数量计算得到第一图像和第二图像的轮廓相似度。其中,该轮廓相似度可以是相似轮廓总数量,占第一轮廓集合和第二轮廓集合中的轮廓的总数量的百分比。若第一图像和第二图像的轮廓相似度小于预设轮廓相似度阈值(例如20%),则确定第一图像和第二图像的轮廓不相似,并确定目标用户界面的检测结果为第二异常结果。若第一图像和第二图像的轮廓相似度大于或等于预设轮廓相似度阈值,则确定第一图像和第二图像的轮廓相似,并根据该轮廓相似度以及其他图像分析结果确定出最终的分析结果,以得到关于目标用户界面的检测结果。其中,目标用户界面是第一图像和第二图像所属的图像类别所对应的目标应用中的用户界面。
本发明实施例中,检测终端对第一图像和第二图像进行直方图比较。首先,检测终端获取第一图像的第一颜色直方图,并获取第二图像的第二颜色直方图。检测终端可以采用calcHist方法(一种统计直方图的方法)分别统计第一图像和第二图像在红绿蓝RGB这3个通道的颜色直方图,可以将图像的颜色划分为16个区间进行颜色直方图统计。然后,检测终端将该第一颜色直方图和第二颜色直方图进行平坦化处理变为一维数组,并将该第一颜色直方图和第二颜色直方图分别对应的一维数组进行直方图比较,得到的第一图像和第二图像的直方图比较结果。检测终端可以采用compareHist(一种比较直方图的方法)方法对该两个一维数组进行直方图比较,得到直方图比较结果。进一步地,若第一图像和第二图像的直方图比较结果大于第一预设阈值(例如0.5),则确定目标用户界面的检测结果为第二异常结果;若第一图像和第二图像的直方图比较结果小于或等于第一预设阈值,则根据该直方图比较结果以及其他图像分析结果确定出最终的分析结果,以得到关于目标用户界面的检测结果。
本发明实施例中,检测终端对第一图像和/或第二图像进行颜色聚集程度检测。首先,检测终端将第一图像由彩色图像转换为灰度图像,并获取得到第一图像的第一颜色直方图。第一颜色直方图可以是按照该灰度图像中的各个像素点的灰度值统计得到的,灰度值可以包括256个灰度级别。然后,检测终端对第一颜色直方图进行统计计算得到第一图像中各个颜色区间的颜色数量。其中,每个颜色区间可以包括预设数目(例如10个)的灰度级别。接着,检测终端将各个颜色区间的颜色数量按照从大到小的顺序进行排序,并计算排序排在前M位的颜色数量的总和;根据排序排在前M位的颜色数量的总和以及第一图像中的颜色总数量,计算得到第一图像的第一颜色聚集信息。其中,M为正整数。第一颜色聚集信息可以是排序排在前M位的颜色数量的总和相对于第一图像中的颜色总数量的占比。该占比体现了第一图像中的颜色的聚集程度,若第一图像中的颜色聚集程度过高,则第一图像中可能出现色块填充情况。同理可以计算得到第二图像的第二颜色聚集信息,在此不再赘述。
进一步地,检测终端对第一颜色聚集信息和/或第二颜色聚集信息进行检测,若检测终端检测到第一颜色聚集信息所指示的数值不小于(大于或等于)第二预设阈值(例如50%),或者第二颜色聚集信息所指示的数值不小于第二预设阈值,则检测终端确定目标用户界面的检测结果为第二异常结果。若检测终端检测到第一颜色聚集信息所指示的数值大于第三预设阈值(例如15%)且小于第二预设阈值,并且第二颜色聚集信息所指示的数值小于第二预设阈值,则检测终端确定目标用户界面的检测结果为第三异常结果。若检测终端检测到第二颜色聚集信息所指示的数值大于第三预设阈值(例如15%)且小于第二预设阈值,并且第一颜色聚集信息所指示的数值小于第二预设阈值,则检测终端确定目标用户界面的检测结果为第三异常结果。
进一步地,若检测终端检测到第一颜色聚集信息和第二颜色聚集信息所指示的数值均小于或等于第三预设阈值,则确定分析结果为第一结果,并根据第一结果以及其他图像分析结果确定出最终的分析结果,以得到关于目标用户界面的检测结果。其中,第一结果表示第一图像和第二图像为正常图像。
在一实施例中,第一颜色聚集信息也可以是第一图像中各个颜色区间的颜色数量分别对于第一图像中的颜色总数量的占比;第二颜色聚集信息也可以是第二图像中各个颜色区间的颜色数量分别对于第二图像中的颜色总数量的占比。检测终端将第一颜色聚集信息和第二颜色聚集信息进行比较,检测各个颜色区间的颜色数量对于第一图像中的颜色总数量的占比,和相应颜色区间的颜色数量对于第二图像中的颜色总数量的占比是否在第三预设差值阈值内;若否,则确定目标用户界面的检测结果为第二或者第三异常结果。
本发明实施例中,检测终端对第一图像和第二图像进行文字相似度检测。首先,检测终端通过识别第一图像中的文字得到第一文字信息,通过识别第一图像中的文字得到第二文字信息。其中,检测终端可以通过光学字符识别(Optical Character Recognition,OCR)方法识别图像中的文字。然后,检测终端对第一文字信息和第二文字信息进行重合率计算,得到第一图像和第二图像的文字重合率。
进一步地,若第一图像和第二图像的文字重合率小于预设文字重合率阈值(例如20%),则确定目标用户界面的检测结果为第二异常结果;若该文字重合率大于或等于所述预设文字重合率阈值,则根据文字重合率以及其他图像分析结果确定出最终的分析结果,以得到关于目标用户界面的检测结果。请一并参见图4b,由于图像中的文字显示异常,可能造成图像中的文字缺失、重叠等情况,如图4b所示,图4b中第二行第一列的图像相对于图4b中第二行第二列的图像缺失了“账”字。文字缺失、重叠等情况会导致第一图像和第二图像的文字重合率降低,从而根据较低的文字重合率可以确定出第一图像或第二图像中存在文字显示异常问题。
综上所述,检测终端得到关于目标用户界面的检测结果的方式为:如果目标类别下只有一张图像,则检测终端检测该图像的数据量是否小于预设数据量阈值,若是,则确定目标类别下的图像对应的目标用户界面的检测结果为第一异常结果;若否,则确定该图像为正常图像。如果目标类别下有多张图像,则检测终端从其中找到一张有效图像(例如非空图像)作为待检测图像(例如第一图像);然后依序使用目标类别下的其它有效图像(对比图像)与待检测图像进行比较。
在一实施例中,某一对比图像(例如第二图像)和待检测图像进行对比的具体方式为:检测终端首先检测对比图像的数据量是否小于预设数据量阈值,若是,则确定目标类别对应的目标用户界面的检测结果为第一异常结果,并结束该类图像之间的比较。若对比图像的数据量大于或等于预设数据量阈值,则检测终端接着检测对比图像和待检测图像的尺寸差异是否在预设尺寸差异阈值内,若否,则确定该类图像对应的目标用户界面的检测结果为第一异常结果,并结束该类图像之间的比较。
进一步地,如果对比图像和待检测图像的尺寸差异在预设尺寸差异阈值内,则检测终端接着使用轮廓比较计算对比图像和待检测图像的轮廓相似度,如果对比图像和待检测图像的轮廓相似度小于预设轮廓相似度阈值,则确定该类图像对应的目标用户界面的检测结果为第二异常结果,并结束该类图像之间的比较。如果对比图像和待检测图像的轮廓相似度大于或等于预设轮廓相似度阈值,则检测终端接着使用直方图比较计算对比图像和待检测图像的直方图比较结果,如果对比图像和待检测图像的直方图比较结果大于第一预设阈值,则确定该类图像对应的目标用户界面的检测结果为第二异常结果,并结束该类图像之间的比较。
进一步地,如果对比图像和待检测图像的直方图分析结果小于或等于第一预设阈值,则检测终端根据对比图像和待检测图像的的颜色聚集信息进行比较,若对比图像和/或待检测图像的的颜色聚集信息所指示的数值大于或等于第二预设阈值,则确定该类图像对应的目标用户界面的检测结果为第二异常结果并结束该类图像之间的比较。若对比图像和待检测图像的的颜色聚集信息所指示的数值均大于第三预设阈值且小于第二预设阈值,则确定该类图像对应的目标用户界面的检测结果为第三异常结果,并结束该类图像之间的比较。若对比图像和待检测图像的颜色聚集信息所指示的数值均小于或等于第三预设阈值,则检测终端对待检测图像和对比图像进行文字比较,得到对比图像和待检测图像的文字重合率。若该文字重合率小于预设文字重合率阈值,则确定述目标用户界面的检测结果为第二异常结果。若该文字重合率大于或等于预设文字重合率阈值,则确定待检测图像和对比图像显示正常。
进一步地,如果以上图像检测方式都未能检测出待检测图像和对比图像之间的异常,或者异常在设定误差范围内,则返回数值0。并根据上述方式,将目标类别下的其他有效图像与待检测图像进行比较,得到目标用户界面的检测结果。若目标类别下的其他有效图像均与待检测图像比较完成之后,均返回值为0,则确定目标用户界面的检测结果为显示正常。
本发明实施例中,检测终端得到关于目标用户界面的检测结果之后,在检测终端的显示界面上显示关于目标用户界面的检测结果,以提示进行人工判定。其中,显示界面上显示了与目标用户界面对应的图像栏,图像栏中包括第一图像和第二图像。若检测结果为第一异常结果,则图像栏被设置为第一标记,可以用第一颜色(例如紫色)填充;若检测结果为第二异常结果,则图像栏被设置为第二标记,可以用第二颜色(例如红色)填充;若检测结果为第三异常结果,则图像栏被设置为第三标记,可以用第三颜色(例如橙色)填充。其中,第一异常结果所指示的异常程度最高,可以用数值3表示;第二异常结果所指示的异常程度次之,可以用数值2表示;第三异常结果所指示的异常程度最小,可以用数值1表示。请一并参阅5,图5为本发明实施例提供的一种显示界面的示意图,如图5所示,假设第一行的目标用户界面关于显示的异常程度为第一异常结果,则用黑色填充预设的标记位置,假设第二行的目标用户界面关于显示的异常程度为第二异常结果,则用灰色填充预设的标记位置。预设的标记位置可以位于显示界面的左侧。
需要说明的是,其他类别的图像之间的分析检测亦可参考上述方式,并可根据分析结果得到相应目标用户界面的检测结果,在此不再赘述。本发明实施例中的预设阈值均可根据实际情况进行相应调整。本发明实施例还可以使用不同算法对第一图像和第二图像中提取的特征进行比较,得到分析结果,并根据分析结果得到关于目标应用中的用户界面的检测结果。
本发明实施例通过首先获取第一图像和第二图像,第一图像和第二图像分别是第一终端和第二终端对显示的目标用户界面所截取的图像,目标用户界面是第一终端和第二终端在执行为目标应用设置的脚本文件时显示的界面,然后对第一图像和第二图像进行分析得到分析结果,并根据分析结果得到关于目标用户界面的检测结果,从而可以实现用户界面检测的自动化,有效提高用户界面检测的效率。
请参阅图6,图6为本发明实施例提供的一种用户界面检测装置的结构示意图。本发明实施例中所描述的用户界面检测装置,对应于前文所述的检测终端,所述用户界面检测装置用于对目标应用中的用户界面进行检测,所述用户界面检测装置包括:
获取单元601,用于获取第一图像,所述第一图像是终端集合包括的第一终端对显示的目标用户界面所截取的图像,所述第一终端显示的目标用户界面是所述第一终端在执行为目标应用设置的脚本文件时显示的界面;
所述获取单元601,还用于获取第二图像,所述第二图像是所述终端集合包括的第二终端对显示的目标用户界面所截取的图像,所述第二终端显示的目标用户界面是所述第二终端在执行为所述目标应用设置的脚本文件时显示的界面;
分析单元602,用于对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果;
其中,所述目标应用被安装在所述终端集合包括的终端上。
在一些可行的实施方式中,所述获取单元601,还用于获取目标图像和所述目标图像的附加信息,所述目标图像是所述终端集合包括的终端在执行所述脚本文件时对显示的界面所截取的图像,所述附加信息包括标识信息,所述标识信息用于表示所述脚本文件的代码行;
其中,所述用户界面检测装置还包括:
分类单元603,用于按照所述附加信息包括的标识信息对所述目标图像进行分类,将所述目标图像记录为所述附加信息包括的标识信息对应的类别中。
在一些可行的实施方式中,所述获取单元601,还用于获取目标类别下图像的图像数目;
所述用户界面检测装置还包括检测单元604,用于:
若获取的图像数目为1,则检测所述目标类别下的图像的数据量是否小于数据量阈值;
若是,则确定所述目标用户界面的检测结果为第一异常结果;
若获取的图像数目为N,则触发所述获取单元601执行所述获取第一图像的步骤,所述N为大于或等于2的正整数。
在一些可行的实施方式中,所述获取单元601获取第一图像的具体方式为:获取待检测图像,并将所述待检测图像作为第一图像,所述待检测图像为所述目标类别下的图像中的一张非空图像;
所述获取单元601获取第二图像的具体方式为:
获取所述目标类别下的图像中除所述待检测图像外的一张图像作为对比图像,并判断所述对比图像是否满足对比条件;
若所述对比图像满足所述对比条件,则将所述对比图像作为第二图像。
在一些可行的实施方式中,满足所述对比条件是指:所述对比图像的数据量大于或等于所述数据量阈值,和/或,所述对比图像和所述待检测图像之间的尺寸差异在尺寸差异阈值内。
在一些可行的实施方式中,所述分析单元602对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果的具体方式为:
获取所述第一图像的第一轮廓集合,并获取所述第二图像的第二轮廓集合;
对所述第一轮廓集合和第二轮廓集合进行相似度分析,得到轮廓相似度;
若所述轮廓相似度小于轮廓相似度阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述轮廓相似度大于或等于所述轮廓相似度阈值,则根据所述轮廓相似度确定分析结果,以得到关于所述目标用户界面的检测结果。
在一些可行的实施方式中,所述分析单元602对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果的具体方式为:
获取所述第一图像的第一颜色直方图,并获取所述第二图像的第二颜色直方图;
将所述第一颜色直方图和第二颜色直方图进行直方图比较,得到直方图比较结果;
若所述直方图比较结果大于第一阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述直方图比较结果小于或等于所述第一阈值,则根据所述直方图比较结果确定分析结果,以得到关于所述目标用户界面的检测结果。
在一些可行的实施方式中,所述分析单元602对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果的具体方式为:
获取所述第一图像的第一颜色聚集信息,并获取所述第二图像的第二颜色聚集信息;
对所述第一颜色聚集信息和/或第二颜色聚集信息进行分析,得到分析结果;
若所述分析结果为所述第一颜色聚集信息所指示的数值不小于第二阈值,或者为所述第二颜色聚集信息所指示的数值不小于所述第二阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述分析结果为所述第一颜色聚集信息所指示的数值大于第三阈值且小于所述第二阈值,且所述第二颜色聚集信息所指示的数值小于所述第二阈值,则确定所述目标用户界面的检测结果为第三异常结果;
若所述分析结果为所述第二颜色聚集信息所指示的数值大于第三阈值且小于所述第二阈值,且所述第一颜色聚集信息所指示的数值小于所述第二阈值,则确定所述目标用户界面的检测结果为第三异常结果。
在一些可行的实施方式中,所述第一颜色聚集信息是根据所述第一图像的像素点的灰度值确定的,所述第二颜色聚集信息是根据所述第二图像的像素点的灰度值确定的。
在一些可行的实施方式中,所述分析单元602对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果的具体方式为:
获取所述第一图像中的第一文字信息,并获取所述第二图像中的第二文字信息;
对所述第一文字信息和第二文字信息进行重合率分析,得到文字重合率;
若所述文字重合率小于文字重合率阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述文字重合率大于或等于所述文字重合率阈值,则根据所述文字重合率确定分析结果,以得到关于所述目标用户界面的检测结果。
在一些可行的实施方式中,所述用户界面检测装置还包括显示单元605,用于:
在检测终端的显示界面上显示关于所述目标用户界面的检测结果;
其中,所述显示界面上显示了与所述目标用户界面对应的图像栏,所述图像栏中包括所述第一图像和第二图像;
若所述检测结果为第一异常结果,则所述图像栏被设置为第一标记;若所述检测结果为第二异常结果,则所述图像栏被设置为第二标记;若所述检测结果为第三异常结果,则所述图像栏被设置为第三标记。
可以理解的是,本发明实施例的用户界面检测装置的各功能单元的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本发明实施例中,获取单元601首先获取第一图像和第二图像,第一图像和第二图像分别是第一终端和第二终端对显示的目标用户界面所截取的图像,目标用户界面是第一终端和第二终端在执行为目标应用设置的脚本文件时显示的界面,然后分析单元602对第一图像和第二图像进行分析得到分析结果,并根据分析结果得到关于目标用户界面的检测结果,从而可以实现用户界面检测的自动化,有效提高用户界面检测的效率。
请参阅图7,图7为本发明实施例提供的一种检测终端的结构示意图。本发明实施例中所描述的检测终端用于对目标应用中的用户界面进行检测,所述检测终端包括:处理器701、用户接口702、通信接口703及存储器704。其中,处理器701、用户接口702、通信接口703及存储器704可通过总线或其他方式连接,本发明实施例以通过总线连接为例。
其中,处理器701(或称CPU(Central Processing Unit,中央处理器))是终端的计算核心以及控制核心,其可以解析终端内的各类指令以及处理终端的各类数据,例如:CPU可以用于解析用户向终端所发送的开关机指令,并控制终端进行开关机操作;再如:CPU可以在终端内部结构之间传输各类交互数据,等等。用户接口702是实现用户与终端进行交互和信息交换的媒介,其具体体现可以包括用于输出的显示屏(Display)以及用于输入的键盘(Keyboard)等等,需要说明的是,此处的键盘既可以为实体键盘,也可以为触屏虚拟键盘,还可以为实体与触屏虚拟相结合的键盘。通信接口703可选的可以包括标准的有线接口、无线接口(如WI-FI、移动通信接口等),受处理器701的控制用于收发数据。存储器704(Memory)是终端中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器704既可以包括终端的内置存储器,当然也可以包括终端所支持的扩展存储器。存储器704提供存储空间,该存储空间存储了终端的操作***,可包括但不限于:Android***、iOS***、Windows Phone***等等,本发明对此并不作限定。
在本发明实施例中,处理器701通过运行存储器704中的可执行程序代码,执行如下操作:
获取第一图像,所述第一图像是终端集合包括的第一终端对显示的目标用户界面所截取的图像,所述第一终端显示的目标用户界面是所述第一终端在执行为目标应用设置的脚本文件时显示的界面;
获取第二图像,所述第二图像是所述终端集合包括的第二终端对显示的目标用户界面所截取的图像,所述第二终端显示的目标用户界面是所述第二终端在执行为所述目标应用设置的脚本文件时显示的界面;
对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果;
其中,所述目标应用被安装在所述终端集合包括的终端上。
在一些可行的实施方式中,所述处理器701还用于:
获取目标图像和所述目标图像的附加信息,所述目标图像是所述终端集合包括的终端在执行所述脚本文件时对显示的界面所截取的图像,所述附加信息包括标识信息,所述标识信息用于表示所述脚本文件的代码行;
按照所述附加信息包括的标识信息对所述目标图像进行分类,将所述目标图像记录为所述附加信息包括的标识信息对应的类别中。
在一些可行的实施方式中,所述处理器701还用于:
获取目标类别下图像的图像数目;
若获取的图像数目为1,则检测所述目标类别下的图像的数据量是否小于数据量阈值;
若是,则确定所述目标用户界面的检测结果为第一异常结果;
若获取的图像数目为N,则执行所述获取第一图像的步骤,所述N为大于或等于2的正整数。
在一些可行的实施方式中,所述处理器701获取第一图像的具体方式为:获取待检测图像,并将所述待检测图像作为第一图像,所述待检测图像为所述目标类别下的图像中的一张非空图像;
所述处理器701获取第二图像的具体方式为:
获取所述目标类别下的图像中除所述待检测图像外的一张图像作为对比图像,并判断所述对比图像是否满足对比条件;
若所述对比图像满足所述对比条件,则将所述对比图像作为第二图像。
在一些可行的实施方式中,满足所述对比条件是指:所述对比图像的数据量大于或等于所述数据量阈值,和/或,所述对比图像和所述待检测图像之间的尺寸差异在尺寸差异阈值内。
在一些可行的实施方式中,所述处理器701对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果的具体方式为:
获取所述第一图像的第一轮廓集合,并获取所述第二图像的第二轮廓集合;
对所述第一轮廓集合和第二轮廓集合进行相似度分析,得到轮廓相似度;
若所述轮廓相似度小于轮廓相似度阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述轮廓相似度大于或等于所述轮廓相似度阈值,则根据所述轮廓相似度确定分析结果,以得到关于所述目标用户界面的检测结果。
在一些可行的实施方式中,所述处理器701对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果的具体方式为:
获取所述第一图像的第一颜色直方图,并获取所述第二图像的第二颜色直方图;
将所述第一颜色直方图和第二颜色直方图进行直方图比较,得到直方图比较结果;
若所述直方图比较结果大于第一阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述直方图比较结果小于或等于所述第一阈值,则根据所述直方图比较结果确定分析结果,以得到关于所述目标用户界面的检测结果。
在一些可行的实施方式中,所述处理器701对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果的具体方式为:
获取所述第一图像的第一颜色聚集信息,并获取所述第二图像的第二颜色聚集信息;
对所述第一颜色聚集信息和/或第二颜色聚集信息进行分析,得到分析结果;
若所述分析结果为所述第一颜色聚集信息所指示的数值不小于第二阈值,或者为所述第二颜色聚集信息所指示的数值不小于所述第二阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述分析结果为所述第一颜色聚集信息所指示的数值大于第三阈值且小于所述第二阈值,且所述第二颜色聚集信息所指示的数值小于所述第二阈值,则确定所述目标用户界面的检测结果为第三异常结果;
若所述分析结果为所述第二颜色聚集信息所指示的数值大于第三阈值且小于所述第二阈值,且所述第一颜色聚集信息所指示的数值小于所述第二阈值,则确定所述目标用户界面的检测结果为第三异常结果。
在一些可行的实施方式中,所述第一颜色聚集信息是根据所述第一图像的像素点的灰度值确定的,所述第二颜色聚集信息是根据所述第二图像的像素点的灰度值确定的。
在一些可行的实施方式中,所述处理器701对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果的具体方式为:
获取所述第一图像中的第一文字信息,并获取所述第二图像中的第二文字信息;
对所述第一文字信息和第二文字信息进行重合率分析,得到文字重合率;
若所述文字重合率小于文字重合率阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述文字重合率大于或等于所述文字重合率阈值,则根据所述文字重合率确定分析结果,以得到关于所述目标用户界面的检测结果。
在一些可行的实施方式中,所述处理器701还用于:
通过用户接口702在所述检测终端的显示界面上显示关于所述目标用户界面的检测结果;
其中,所述显示界面上显示了与所述目标用户界面对应的图像栏,所述图像栏中包括所述第一图像和第二图像;
若所述检测结果为第一异常结果,则所述图像栏被设置为第一标记;若所述检测结果为第二异常结果,则所述图像栏被设置为第二标记;若所述检测结果为第三异常结果,则所述图像栏被设置为第三标记。
具体实现中,本发明实施例中所描述的处理器701、用户接口702、通信接口703及存储器704可执行本发明实施例提供的一种用户界面检测方法中所描述的检测终端的实现方式,也可执行本发明实施例图6提供的一种用户界面检测装置中所描述的实现方式,在此不再赘述。
本发明实施例中,处理器701首先获取第一图像和第二图像,第一图像和第二图像分别是第一终端和第二终端对显示的目标用户界面所截取的图像,目标用户界面是第一终端和第二终端在执行为目标应用设置的脚本文件时显示的界面,然后对第一图像和第二图像进行分析得到分析结果,并根据分析结果得到关于目标用户界面的检测结果,从而可以实现用户界面检测的自动化,有效提高用户界面检测的效率。
本发明实施例还提供了一种存储介质,存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如本发明实施例所述的用户界面检测方法。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上所揭露的仅为本发明部分实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (13)
1.一种用户界面检测方法,其特征在于,所述方法包括:
获取目标图像和所述目标图像的附加信息,按照所述附加信息包括的标识信息对所述目标图像进行分类,将所述目标图像记录为所述标识信息对应的类别中;所述目标图像是终端集合包括的终端在执行脚本文件时对显示的界面所截取的图像,所述标识信息用于表示所述脚本文件的代码行,所述脚本文件是为目标应用设置的;
获取目标类别下图像的图像数目,若获取的图像数目为N,则获取待检测图像,并将所述待检测图像作为第一图像;所述目标类别为分类得到的多个类别中的任意一个类别,所述N为大于或等于2的正整数,所述待检测图像为所述目标类别下的图像中的一张非空图像;所述第一图像是所述终端集合包括的第一终端对显示的目标用户界面所截取的图像,所述第一终端显示的目标用户界面是所述第一终端在执行所述脚本文件时显示的界面;
获取所述目标类别下的图像中除所述待检测图像外的一张图像作为对比图像,若所述对比图像满足对比条件,则将所述对比图像作为第二图像;所述第二图像是所述终端集合包括的第二终端对显示的目标用户界面所截取的图像,所述第二终端显示的目标用户界面是所述第二终端在执行所述脚本文件时显示的界面;
对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果;
其中,所述目标应用被安装在所述终端集合包括的终端上。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若获取的图像数目为1,则检测所述目标类别下的图像的数据量是否小于数据量阈值;
若是,则确定所述目标用户界面的检测结果为第一异常结果。
3.根据权利要求2所述的方法,其特征在于,满足所述对比条件是指:所述对比图像的数据量大于或等于所述数据量阈值,和/或,所述对比图像和所述待检测图像之间的尺寸差异在尺寸差异阈值内。
4.根据权利要求1所述的方法,其特征在于,所述对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果,包括:
获取所述第一图像的第一轮廓集合,并获取所述第二图像的第二轮廓集合;
对所述第一轮廓集合和第二轮廓集合进行相似度分析,得到轮廓相似度;
若所述轮廓相似度小于轮廓相似度阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述轮廓相似度大于或等于所述轮廓相似度阈值,则根据所述轮廓相似度确定分析结果,以得到关于所述目标用户界面的检测结果。
5.根据权利要求1所述的方法,其特征在于,所述对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果,包括:
获取所述第一图像的第一颜色直方图,并获取所述第二图像的第二颜色直方图;
将所述第一颜色直方图和第二颜色直方图进行直方图比较,得到直方图比较结果;
若所述直方图比较结果大于第一阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述直方图比较结果小于或等于所述第一阈值,则根据所述直方图比较结果确定分析结果,以得到关于所述目标用户界面的检测结果。
6.根据权利要求1所述的方法,其特征在于,所述对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果,包括:
获取所述第一图像的第一颜色聚集信息,并获取所述第二图像的第二颜色聚集信息;
对所述第一颜色聚集信息和/或第二颜色聚集信息进行分析,得到分析结果;
若所述分析结果为所述第一颜色聚集信息所指示的数值不小于第二阈值,或者为所述第二颜色聚集信息所指示的数值不小于所述第二阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述分析结果为所述第一颜色聚集信息所指示的数值大于第三阈值且小于所述第二阈值,且所述第二颜色聚集信息所指示的数值小于所述第二阈值,则确定所述目标用户界面的检测结果为第三异常结果;
若所述分析结果为所述第二颜色聚集信息所指示的数值大于第三阈值且小于所述第二阈值,且所述第一颜色聚集信息所指示的数值小于所述第二阈值,则确定所述目标用户界面的检测结果为第三异常结果。
7.根据权利要求6所述的方法,其特征在于,所述第一颜色聚集信息是根据所述第一图像的像素点的灰度值确定的,所述第二颜色聚集信息是根据所述第二图像的像素点的灰度值确定的。
8.根据权利要求1所述的方法,其特征在于,所述对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果,包括:
获取所述第一图像中的第一文字信息,并获取所述第二图像中的第二文字信息;
对所述第一文字信息和第二文字信息进行重合率分析,得到文字重合率;
若所述文字重合率小于文字重合率阈值,则确定所述目标用户界面的检测结果为第二异常结果;
若所述文字重合率大于或等于所述文字重合率阈值,则根据所述文字重合率确定分析结果,以得到关于所述目标用户界面的检测结果。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在检测终端的显示界面上显示关于所述目标用户界面的检测结果;
其中,所述显示界面上显示了与所述目标用户界面对应的图像栏,所述图像栏中包括所述第一图像和第二图像;
若所述检测结果为第一异常结果,则所述图像栏被设置为第一标记;若所述检测结果为第二异常结果,则所述图像栏被设置为第二标记;若所述检测结果为第三异常结果,则所述图像栏被设置为第三标记。
10.一种用户界面检测装置,其特征在于,所述装置包括:
获取单元,用于获取目标图像和所述目标图像的附加信息;
分类单元,用于按照所述附加信息包括的标识信息对所述目标图像进行分类,将所述目标图像记录为所述标识信息对应的类别中;所述目标图像是终端集合包括的终端在执行脚本文件时对显示的界面所截取的图像,所述标识信息用于表示所述脚本文件的代码行,所述脚本文件是为目标应用设置的;
所述获取单元,还获取目标类别下图像的图像数目,若获取的图像数目为N,则获取待检测图像,并将所述待检测图像作为第一图像;所述目标类别为分类得到的多个类别中的任意一个类别,所述N为大于或等于2的正整数,所述待检测图像为所述目标类别下的图像中的一张非空图像;所述第一图像是所述终端集合包括的第一终端对显示的目标用户界面所截取的图像,所述第一终端显示的目标用户界面是所述第一终端在执行所述脚本文件时显示的界面;
所述获取单元,还用于获取所述目标类别下的图像中除所述待检测图像外的一张图像作为对比图像,若所述对比图像满足对比条件,则将所述对比图像作为第二图像;所述第二图像是所述终端集合包括的第二终端对显示的目标用户界面所截取的图像,所述第二终端显示的目标用户界面是所述第二终端在执行所述脚本文件时显示的界面;
分析单元,用于对所述第一图像和第二图像进行分析,得到分析结果,根据所述分析结果得到关于所述目标用户界面的检测结果;
其中,所述目标应用被安装在所述终端集合包括的终端上。
11.一种检测终端,其特征在于,包括:处理器、通信接口和存储器,所述存储器存储有可执行程序代码,所述通信接口受所述处理器的控制用于收发信息,所述处理器用于调用所述可执行程序代码,执行如权利要求1至9中任一项所述的用户界面检测方法。
12.一种用户界面检测***,其特征在于,包括:检测终端和包括至少两个终端的终端集合,所述检测终端用于执行如权利要求1至9中任一项所述的用户界面检测方法。
13.一种存储介质,其特征在于,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如权利要求1至9中任一项所述的用户界面检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810449670.XA CN108579094B (zh) | 2018-05-11 | 2018-05-11 | 一种用户界面检测方法及相关装置、***和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810449670.XA CN108579094B (zh) | 2018-05-11 | 2018-05-11 | 一种用户界面检测方法及相关装置、***和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108579094A CN108579094A (zh) | 2018-09-28 |
CN108579094B true CN108579094B (zh) | 2023-04-18 |
Family
ID=63637236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810449670.XA Active CN108579094B (zh) | 2018-05-11 | 2018-05-11 | 一种用户界面检测方法及相关装置、***和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108579094B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111247517B (zh) * | 2018-06-27 | 2021-08-20 | 华为技术有限公司 | 一种图像处理方法、装置及*** |
CN109614175B (zh) * | 2018-10-17 | 2024-05-24 | 深圳市大梦龙途文化传播有限公司 | 用户界面异常处理方法、装置、计算机设备及存储介质 |
CN109324864B (zh) * | 2018-10-24 | 2021-09-21 | 北京赢销通软件技术有限公司 | 一种人机交互操作信息的获取方法及装置 |
CN110597719B (zh) * | 2019-09-05 | 2021-06-15 | 腾讯科技(深圳)有限公司 | 一种用于适配测试的图像聚类方法、装置及介质 |
CN111652208A (zh) * | 2020-04-17 | 2020-09-11 | 北京三快在线科技有限公司 | 用户界面组件的识别方法、装置、电子设备及存储介质 |
CN113204455A (zh) * | 2021-05-06 | 2021-08-03 | 广州朗国电子科技有限公司 | 一种自动检测用户界面显示异常的方法、设备、存储介质 |
CN114782725B (zh) * | 2022-06-21 | 2022-10-04 | 北京尽微致广信息技术有限公司 | 一种对比用户界面图像差异的方法、装置以及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077119A (zh) * | 2013-03-29 | 2014-10-01 | 阿里巴巴集团控股有限公司 | 页面对比方法和装置 |
US8856748B1 (en) * | 2013-09-17 | 2014-10-07 | Xamarin Inc. | Mobile application testing platform |
CN104424089A (zh) * | 2013-08-21 | 2015-03-18 | 中兴通讯股份有限公司 | 终端的测试方法及装置 |
CN104765678A (zh) * | 2014-01-08 | 2015-07-08 | 阿里巴巴集团控股有限公司 | 对移动终端设备上的应用进行测试的方法及装置 |
CN105227949A (zh) * | 2015-09-16 | 2016-01-06 | 成都三零凯天通信实业有限公司 | 一种Android机顶盒自动化测试方法 |
WO2017005148A1 (zh) * | 2015-07-03 | 2017-01-12 | 上海触乐信息科技有限公司 | 一种自动化地软件测试方法和装置 |
-
2018
- 2018-05-11 CN CN201810449670.XA patent/CN108579094B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077119A (zh) * | 2013-03-29 | 2014-10-01 | 阿里巴巴集团控股有限公司 | 页面对比方法和装置 |
CN104424089A (zh) * | 2013-08-21 | 2015-03-18 | 中兴通讯股份有限公司 | 终端的测试方法及装置 |
US8856748B1 (en) * | 2013-09-17 | 2014-10-07 | Xamarin Inc. | Mobile application testing platform |
CN104765678A (zh) * | 2014-01-08 | 2015-07-08 | 阿里巴巴集团控股有限公司 | 对移动终端设备上的应用进行测试的方法及装置 |
WO2017005148A1 (zh) * | 2015-07-03 | 2017-01-12 | 上海触乐信息科技有限公司 | 一种自动化地软件测试方法和装置 |
CN105227949A (zh) * | 2015-09-16 | 2016-01-06 | 成都三零凯天通信实业有限公司 | 一种Android机顶盒自动化测试方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108579094A (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108579094B (zh) | 一种用户界面检测方法及相关装置、***和存储介质 | |
CN109886928B (zh) | 一种目标细胞标记方法、装置、存储介质及终端设备 | |
CN109446061B (zh) | 一种页面检测方法、计算机可读存储介质及终端设备 | |
CN110781839A (zh) | 一种基于滑窗的大尺寸图像中小目标识别方法 | |
CN109116129B (zh) | 终端检测方法、检测设备、***及存储介质 | |
CN108460346B (zh) | 指纹识别方法及装置 | |
CN111738252B (zh) | 图像中的文本行检测方法、装置及计算机*** | |
CN111008561A (zh) | 一种牲畜的数量确定方法、终端及计算机存储介质 | |
CN110765891A (zh) | 工程图纸识别方法、电子设备及相关产品 | |
CN115131714A (zh) | 视频图像智能检测分析方法及*** | |
CN112633313A (zh) | 一种网络终端的不良信息识别方法及局域网终端设备 | |
CN112085721A (zh) | 基于人工智能的水淹车定损方法、装置、设备及存储介质 | |
CN115392937A (zh) | 一种用户欺诈风险识别方法、装置、电子设备及存储介质 | |
CN112052702A (zh) | 一种识别二维码的方法和装置 | |
CN108647570B (zh) | 斑马线检测方法、装置及计算机可读存储介质 | |
CN112966687B (zh) | 图像分割模型训练方法、装置及通信设备 | |
CN112633200A (zh) | 基于人工智能的人脸图像比对方法、装置、设备及介质 | |
CN114596243A (zh) | 缺陷检测方法、装置、设备及计算机可读存储介质 | |
CN111754491A (zh) | 一种图片清晰度判定方法及装置 | |
CN110751013A (zh) | 场景识别方法、装置和计算机可读存储介质 | |
CN112199131B (zh) | 一种页面检测方法、装置及设备 | |
CN114972500A (zh) | 查验方法、标注方法、***、装置、终端、设备及介质 | |
CN110363251B (zh) | 一种sku图像分类方法、装置、电子设备及存储介质 | |
CN114241354A (zh) | 仓库人员行为识别方法、装置、计算机设备、存储介质 | |
CN114463242A (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 |