CN113506291B - 兼容性测试方法及装置 - Google Patents

兼容性测试方法及装置 Download PDF

Info

Publication number
CN113506291B
CN113506291B CN202110866879.8A CN202110866879A CN113506291B CN 113506291 B CN113506291 B CN 113506291B CN 202110866879 A CN202110866879 A CN 202110866879A CN 113506291 B CN113506291 B CN 113506291B
Authority
CN
China
Prior art keywords
similarity
terminals
page
display
same
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
Application number
CN202110866879.8A
Other languages
English (en)
Other versions
CN113506291A (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.)
Shanghai Hode Information Technology Co Ltd
Original Assignee
Shanghai Hode Information Technology Co Ltd
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 Shanghai Hode Information Technology Co Ltd filed Critical Shanghai Hode Information Technology Co Ltd
Priority to CN202110866879.8A priority Critical patent/CN113506291B/zh
Publication of CN113506291A publication Critical patent/CN113506291A/zh
Application granted granted Critical
Publication of CN113506291B publication Critical patent/CN113506291B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Quality & Reliability (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请提供兼容性测试方法及装置,其中所述兼容性测试方法包括:获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;计算任意两个终端针对同一指定页面的显示图片之间的相似度;根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度;确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。实现了自动识别出海量的不同机型的终端中同一个指定页面中存在兼容性问题的机型,无需人工介入,不仅降低了人工成本,还提高了兼容性测试的速度和准确率。

Description

兼容性测试方法及装置
技术领域
本申请涉及计算机技术领域,特别涉及一种兼容性测试方法。本申请同时涉及一种兼容性测试装置,一种计算设备,以及一种计算机可读存储介质。
背景技术
随着计算机技术的不断发展,各种各样机型的终端设备层出不穷。随着终端设备机型种类的增多,会导致一些应用在不同机型的终端设备上出现兼容性问题。
现有技术中,通常利用基准图去检测应用在不同机型的终端设备上的兼容性问题,也即通过给应用的某个页面设置一张基准图,然后在各个机型的终端设备上对该页面进行截图,将这些截图分别与基准图进行对比,如果某个截图与基准图不一致,则认为该应用在这个截图对应机型的终端设备上存在兼容性问题。
上述方法中,需要针对应用的每个页面分别设定基准图,随着应用的页面数量和页面变更频率的增加,需要设置大量的基准图,从而导致维护成本过高。因此,亟需一种有效的方案以解决上述问题。
发明内容
有鉴于此,本申请实施例提供了一种兼容性测试方法。本申请同时涉及一种兼容性测试装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的兼容性测试成本过高的技术缺陷。
根据本申请实施例的第一方面,提供了一种兼容性测试方法,包括:
获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;
计算任意两个终端针对同一指定页面的显示图片之间的相似度;
根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度;
确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
根据本申请实施例的第二方面,提供了一种兼容性测试装置,包括:
获取模块,被配置为获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;
计算模块,被配置为计算任意两个终端针对同一指定页面的显示图片之间的相似度;
第一确定模块,被配置为根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度;
第二确定模块,被配置为确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述计算机指令时实现所述兼容性测试方法的步骤。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现所述兼容性测试方法的步骤。
本申请提供的兼容性测试方法,获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;计算任意两个终端针对同一指定页面的显示图片之间的相似度;根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度;确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。本申请通过计算任意两个终端针对同一指定页面的显示图片之间的相似度,进一步确定各机型的终端针对目标应用的目标相似度,基于目标相似度和相似度阈值,确定不兼容目标应用的终端,实现了自动识别出海量的不同机型的终端中同一个指定页面中存在兼容性问题的机型,无需人工介入,不仅降低了人工成本,还提高了兼容性测试的速度和准确率。
附图说明
图1是本申请一实施例提供的一种兼容性测试方法的流程图;
图2A是本申请一实施例提供的一种分块处理前的终端针对同一指定页面的显示图片;
图2B是本申请一实施例提供的一种分块处理后的终端针对同一指定页面的显示图片;
图3是本申请一实施例提供的一种应用于手机应用的兼容性检测方法的处理流程图;
图4是本申请一实施例提供的一种兼容性测试装置的结构示意图;
图5是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本申请一个或多个实施例涉及的名词术语进行解释。
兼容性测试:验证应用在不同机型或者不同操作系统版本的终端上,用户界面是否存在异常或者不一致问题的过程。
OpenCV是一个基于伯克利软件发布(BSD,Berkly Software Distribution)许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
absdiff函数是OpenCV中计算两个数组差的绝对值的函数。
cvtColor函数是OpenCV中将输入图像从一个颜色空间转换为另一个颜色空间的函数。在从RGB颜色空间转换的情况下,应明确指定通道的顺序(RGB或BGR)。OpenCV中的默认颜色格式通常称为RGB,但实际上是BGR(字节相反)。因此,标准(24位)彩色图像中的第一个字节将为8位蓝色分量,第二个字节为绿色,第三个字节为红色。第四,第五和第六个字节将是第二个像素(蓝色,然后是绿色,然后是红色),依此类推。
结构相似性(SSIM,structural similarity),是一种衡量两幅图像相似度的指标。SSIM算法主要用于检测两张相同尺寸的图像的相似度、或者检测图像的失真程度,主要通过分别比较两个图像的亮度,对比度,结构,然后对这三个要素加权并用乘积表示。
在本申请中,提供了一种兼容性测试方法,本申请同时涉及一种兼容性测试装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本申请一实施例提供的一种兼容性测试方法的流程图,具体包括以下步骤:
步骤102:获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面。
具体的,终端可以是计算机、手机、MP4、平板电脑等可以安装目标应用的智能设备;各机型的终端可以是常用的能够安装目标应用的不同型号的智能设备,还可以是所有能够安装目标应用的不同型号的智能设备,如所有可以安装某游戏的智能设备;显示图片可以是各机型的终端打开目标应用中指定页面时的截图。
实际应用中,为了精准测试目标应用在各终端上的兼容性,需要不同机型的终端上打开目标应用的指定页面,然后进行截图,获得待检测的用于测试兼容性的显示图片。指定页面可以是目标应用中的任意一个页面。
例如,目标应用为应用APP1,指定页面为登录页面,可以安装该目标应用的终端型号有XH1、XH2、XH3、XH4和XH5,则可以在型号分别为XH1、XH2、XH3、XH4和XH5的终端上打开应用APP1,并对登录页面进行截图,从而获得5个显示图片。
需要说明的是,本申请中,为了提高兼容性测试方法的效率,需要尽可能多的获取海量的不同机型的终端打开目标应用的显示图片,且对于同一机型的终端,只需获取一张显示图片,也即机型与显示图片一一对应。如此,可以在保障显示图片种类全面(机型全面)的情况下,尽可能的减少显示图片的数量,从而降低了本申请的数据处理量,进一步提高了兼容性测试方法的速度和准确率。
步骤104:计算任意两个终端针对同一指定页面的显示图片之间的相似度。
在获取了各个机型的终端打开目标应用中指定页面的显示图片的基础上,进一步地,需要确定这些显示图片的之间的相似度。
具体的,任意两个终端是指各机型的终端中任意两个不相同的终端;相似度是指两个显示图片相似的程度,计算相似度的算法有很多,如欧几里得距离、曼哈顿距离、明可夫斯基距离、余弦相似度等,本申请对此不做限定。
实际应用中,在获得各机型的终端打开目标应用中指定页面的显示图片后,需要计算每个显示图片和其他显示图片的相似度,也即计算两两显示图片之间的相似度。
沿用上例,在型号分别为XH1、XH2、XH3、XH4和XH5的终端上打开应用APP1,并对登录页面进行截图,从而获得5个显示图片,分别为:显示图片T1、显示图片T2、显示图片T3、显示图片T4和显示图片T5。则需要计算显示图片T1与显示图片T2的相似度、显示图片T1与显示图片T3的相似度、显示图片T1与显示图片T4的相似度、显示图片T1与显示图片T5的相似度、显示图片T2与显示图片T3的相似度、显示图片T2与显示图片T4的相似度、显示图片T2与显示图片T5的相似度、显示图片T3与显示图片T4的相似度、显示图片T3与显示图片T5的相似度以及显示图片T4与显示图片T5的相似度。
由于显示图片是从不同机型的终端进行获取的,各机型的终端的分辨率可能不同,从而导致获取的显示图片之间的分辨率不同。为了提高计算相似度的可靠性,需要根据两个终端针对同一指定页面的显示图片的分辨率是否相同,从而选择对应的相似度计算方法,也即在计算任意两个终端针对同一指定页面的显示图片之间的相似度之前,需要判断任意两个终端针对同一指定页面的显示图片的分辨率是否相同。
若任意两个终端针对同一指定页面的显示图片的分辨率相同,为了提高计算任意两个终端针对同一指定页面的显示图片之间的相似度的精确度,可以先利用滑动窗对这两个显示图片进行分块处理,根据分块之间的相似度确定这两个显示图片的相似度。也即在所述任意两个终端针对同一指定页面的显示图片的分辨率相同的情况下,所述计算任意两个终端针对同一指定页面的显示图片之间的相似度的具体实现过程可以如下:
利用预设滑动窗,将任意两个终端针对同一指定页面的显示图片分别进行分块处理;
计算所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度;
根据所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度,确定所述任意两个终端针对同一指定页面的显示图片之间的相似度。
具体的,滑动窗就像一个滑动的窗口,套在一个显示图片中,可以上下左右地滑动,窗口内就是一个分块,滑动窗的大小可以是固定的,也可以是非固定的;预设滑动窗是指设置了大小的滑动窗;分块处理是指利用滑动窗将显示图片分割为多个分块的过程。
实际应用中,在任意两个终端针对同一指定页面的显示图片的分辨率相同的情况下,利用预设滑动窗,分别将任意两个终端针对同一指定页面的显示图片分割为多个分块,也即进行分块处理。然后分别计算这两个显示图片中位置相互对应的分块之间的相似度,如显示图片1中左下角第一个分块与显示图片2中左下角第一个分块的相似度。在计算任意两个终端针对同一指定页面的显示图片中所有的对应分块之间的相似度后,根据对应分块之间的相似度确定这两个显示图片的相似度。
例如,在任意两个终端针对同一指定页面的显示图片的分辨率相同的情况下,即显示图片A和显示图片B的分辨率不同,先利用滑动窗对其中一个显示图片——显示图片A进行分块处理,如图2A所示,图2A示出了本申请一实施例提供的一种分块处理前的终端针对同一指定页面的显示图片:分块处理前的终端针对同一指定页面的显示图片的大小为20*20。然后利用预设滑动窗,将该显示图片进行分块处理,如图2B所示,图2B示出了本申请一实施例提供的一种分块处理后的终端针对同一指定页面的显示图片:利用窗口大小为4*4的预设滑动窗,将该显示图片进行分块处理,得到分块处理后的终端针对同一指定页面的显示图片,该显示图片被分为25个分块。针对另一个显示图片——显示图片B进行同样的分块处理,同样得到25个分块。然后计算显示图片A的第1分块与显示图片B的第1分块之间的第一相似度,如利用OpenCV中的absdiff函数进行差异对比得出第1分块之间的第一相似度。接着用同样的方法计算显示图片A的第2分块与显示图片B的第2分块之间的第二相似度,直至计算出显示图片A的第25分块与显示图片B的第25分块之间的第二十五相似度。进一步地,按照预设规则,根据第一相似度至第二十五相似度计算出显示图片A和显示图片B的相似度。
在本实施例的一个或多个实施方式中,为了提高计算对应分块之间的相似度的效率,可以先将显示图片进行灰度处理,再计算对应分块之间的相似度。也即计算所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度之前,还包括将所述任意两个显示图片进行灰度处理。相应地,计算所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度的具体实现过程如下:
利用结构相似性算法,计算灰度处理后的所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度。
具体的,灰度处理,也即图像灰度化处理,是指将图像中的每个像素变为只有一个采样颜色的过程。结构相似性算法,也即SSIM算法,是一种衡量两幅图像相似度的指标。
实际应用中,可以对任意两个终端针对同一指定页面的显示图片进行灰度处理,然后利用结构相似度SSIM算法,计算灰度处理后的这两个显示图片中各对应分块之间的相似度。以便后续根据各对应分块之间的相似度,确定这两个显示图片之间的相似度。
例如,在OpenCV中利用cvtColor函数将两个显示图片分别进行灰度处理,然后利用结构相似度SSIM算法,计算出这两个显示图片中对应分块之间的相似度,也即将灰度处理后的两个对应分块输入至SSIM算法中,利用离散信号分别确定两个对应分块的亮度值,再根据标准差分别确定两个对应分块的对比度估量值,根据各对应分块的亮度值和对比度估量值确定各对应分块的结构信息;进一步地,将两个对应分块的亮度值进行对比、将两个对应分块的对比度估量值进行对比以及将两个对应分块的结构信息进行对比,根据对比结果确定这两个对应分块之间的相似度。
优选地,预设规则算法可以是:为每个对应分块之间的相似度设置权重,确定各对应分块之间的相似度与其对应的权重的乘积,再将各个乘积相加得到总和,最后将总和除以相似度的数量,得到任意两个终端针对同一指定页面的显示图片之间的相似度,如式1所示。
D=(Q1*S1+Q2*S2+……+QN*SN)/N (式1)
式1中,D为任意两个终端针对同一指定页面的显示图片之间的相似度;S1至SN分别为第1分块至第N分块的相似度,即第一相似度至第N相似度;Q1至QN分别为第一相似度至第N相似度的权重;N为一个显示图片所包含的分块数量,N为大于等于1的自然数。
为了提高计算显示图片之间的相似度的速率,可以每个对应分块之间的相似度设置权重均设置为1,进而预设规则算法变为:确定各对应分块之间的相似度的总和,最后将总和除以相似度的数量,得到任意两个终端针对同一指定页面的显示图片之间的相似度。也即根据所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度,确定所述任意两个终端针对同一指定页面的显示图片之间的相似度,具体实现过程为:
将所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度的平均值,确定为所述任意两个终端针对同一指定页面的显示图片之间的相似度。
实际应用中,在得到任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度之后,计算这些相似度的平均值,将得到的平均值作为该任意两个终端针对同一指定页面的显示图片之间的相似度,如式2所示。
D=(S1+S2+……+SN)/N (式2)
式2中,D为任意两个终端针对同一指定页面的显示图片之间的相似度;S1至SN分别为第1分块至第N分块的相似度,即第一相似度至第N相似度。
例如,将显示图片C1划分为3个分块C1-1、C1-2和C1-3,将显示图片C2划分为3个分块比较C2-1、C2-2和C2-3,且分块C1-1和分块C2-1的相似度为m1、分块C1-2和分块C2-2的相似度为m2、分块C1-3和分块C2-3的相似度为m3,则显示图片C1与显示图片C2的相似度为(m1+m2+m3)/3。
若任意两个终端针对同一指定页面的显示图片的分辨率不相同,为了去除显示图片的细节,只保留结构或者明暗等基本信息,摒弃不同尺寸或者比例带来的显示图像之间的差异,可以将这两个显示图片进行压缩,使两个显示图片的像素相同、尺寸也相同,然后再计算压缩后的两个显示图片的相似度。也即在所述任意两个显示图片的分辨率不相同的情况下,所述计算任意两个终端针对同一指定页面的显示图片之间的相似度,包括:
根据预设像素参数,将所述任意两个终端针对同一指定页面的显示图片进行压缩;
根据压缩后的各终端针对同一指定页面的显示图片的特征信息,计算所述任意两个终端针对同一指定页面的显示图片之间的相似度。
具体的,预设像素参数是指将显示图片压缩为可以进行相似度计算的预设尺寸且包含预设像素的图片;特征信息可以是颜色特征信息、光照特征信息、灰度平均值信息、纹理特征信息等,本申请对此不做限定。
实际应用中,按照预设像素参数中包含的预设尺寸和预设像素数将任意两个终端针对同一指定页面的显示图片进行压缩,得到压缩后的两个显示图片,如此可以去除显示图片的细节,只保留结构或者明暗等基本信息,摒弃不同尺寸或者比例带来的显示图像之间的差异,能够提高计算任意两个终端针对同一指定页面的显示图片之间的相似度的可靠性和效率。进一步地,根据压缩后的两个显示图片的特征信息,计算这两个显示图片之间的相似度。
例如,预设像素参数为8*8(预设尺寸)和64(预设像素数),则将任意两个终端针对同一指定页面的显示图片缩小至8*8的尺寸,并使每个显示图片包含64个像素。
在本实施例的一个或多个实施方式中,为了提高兼容性测试的准确性和速度,还需要根据压缩后的各个显示图片的像素确定各个显示图片的特征信息,进而根据各个显示图片的特征信息计算相似度。也即根据压缩后的各终端针对同一指定页面的显示图片的特征信息,计算所述任意两个终端针对同一指定页面的显示图片之间的相似度之前,还包括:
确定压缩后的各终端针对同一指定页面的显示图片中像素的色彩平均值;
根据当前色彩平均值和当前终端针对同一指定页面的显示图片中各像素的色彩值,确定所述当前终端针对同一指定页面的显示图片的特征信息。
具体的,色彩平均值是指将一个显示图片中所有像素的色彩值相加,再除以像素数量得到的值,如显示图片中有3个像素,色彩值分别为3、6、9,则色彩平均值为(3+6+9)/3=6;色彩值是指像素的色彩对应的值,每个像素的色彩值由该像素的红色值、绿色值、蓝色值以及透明度值确定。
实际应用中,在根据预设像素参数,将任意两个终端针对同一指定页面的显示图片进行压缩后,对这两个压缩后的显示图片进行处理:分别确定各个显示图片中各像素的色彩值;然后基于当前显示图片中各像素的色彩值,确定像素的色彩平均值;最后基于当前显示图片中各像素的色彩值以及当前色彩平均值确定当前的显示图片的特征信息。
例如,压缩后的各终端针对同一指定页面的显示图片有显示图片X1和显示图片X2,则分别确定显示图片X1和显示图片X2中各像素的色彩值,其中显示图片X1和显示图片X2均包括4个像素,显示图片X1中4个像素的色彩值分别为3、5、7、9,显示图片X2中4个像素的色彩值分别为2、4、6、8,则显示图片X1中像素的平均色彩值为(3+5+7+9)/4=6,显示图片X2中像素的平均色彩值为(2+4+6+8)/4=5。然后基于显示图片X1中4个像素的色彩值和显示图片X1中像素的平均色彩值6,确定显示图片X1的特征信息;基于显示图片X2中4个像素的色彩值和显示图片X2中像素的平均色彩值5,确定显示图片X2的特征信息。
为了更加快速地确定显示图片的特征信息,优选地,该特征信息为图像指纹。此时,需要将显示图片中各像素的色彩值分别与色彩平均值进行比较,进而得到图像指纹。也即根据当前色彩平均值和当前终端针对同一指定页面的显示图片中各像素的色彩值,确定所述当前终端针对同一指定页面的显示图片的特征信息,具体实现过程可以如下:
从所述当前终端针对同一指定页面的显示图片的第一个像素开始,依次比较当前像素的色彩值与所述当前色彩平均值;
若所述当前像素的色彩值大于或等于所述当前色彩平均值,则对所述当前像素添加第一标记;
若所述当前像素的色彩值小于所述当前色彩平均值,则对所述当前像素添加第二标记;
按照所述当前终端针对同一指定页面的显示图片中像素的排列顺序,将针对各像素添加的标记进行拼接,得到所述当前终端针对同一指定页面的显示图像的特征信息。
具体的,第一标记与第二标记是两个不相同的标记,可以是数字,也可以是字母,还可以是符号;像素的排列顺序的排列顺序可以是从前往后,例如从第一个像素至最后一个像素,也可以是从后往前,例如从最后一个像素至第一个像素,还可以是其他排列顺序,例如有三行像素,排列顺序为第二行、第一行、第三行,且每行均为从左往右。
实际应用中,需要将当前的显示图片中每一个像素的色彩值与当前色彩平均值进行比较:先将当前的显示图片中第一个像素的色彩值与当前色彩平均值进行比较,若第一个像素的色彩值大于或等于当前色彩平均值,则给第一个像素添加第一标记,若第一个像素的色彩值小于当前色彩平均值,则给第一个像素添加第二标记。然后按照上述方法,将当前的显示图片中第一个像素的色彩值与当前色彩平均值进行比较,直至将当前的显示图片中最后一个像素的色彩值与当前色彩平均值进行比较,并给最后一个像素添加队形的标记。之后,按照当前的显示图片中像素的排列顺序,将各像素的标记进行拼接,得到当前的显示图片的图像指纹,也即特征信息。
沿用上例,显示图片X1中有4个像素的色彩值,分别为3、5、7、9,显示图片X1中像素的平均色彩值6;显示图片X2中有4个像素的色彩值分别为2、4、6、8,显示图片X2中像素的平均色彩值5。假设第一标记为“★”,第二标记为“☆”。此时,显示图片X1中第一个像素的色彩值3小于平均色彩值6,则显示图片X1第一个像素的标记为“☆”;显示图片X1中第二个像素的色彩值5小于平均色彩值6,则显示图片X1中第二个像素的标记为“☆”;显示图片X1中第三个像素的色彩值7大于平均色彩值6,则显示图片X1中第三个像素的标记为“★”,显示图片X1中第四个像素的色彩值9大于平均色彩值6,则显示图片X1中第四个像素的标记为“★”;按照从前往后的排列顺序,显示图片X1的特征信息为“☆☆★★”。显示图片X2中第一个像素的色彩值2小于平均色彩值5,则显示图片X2第一个像素的标记为“☆”;显示图片X2中第二个像素的色彩值4小于平均色彩值5,则显示图片X2中第二个像素的标记为“☆”;显示图片X2中第三个像素的色彩值6大于平均色彩值5,则显示图片X2中第三个像素的标记为“★”,显示图片X2中第四个像素的色彩值8大于平均色彩值5,则显示图片X2中第四个像素的标记为“★”;按照从前往后的排列顺序,显示图片X2的特征信息为“☆☆★★”。
需要说明的是,本申请中第一标记优选“1”,第二标记优选“0”,即若所述当前像素的色彩值大于或等于所述当前色彩平均值,则对所述当前像素添加1;若所述当前像素的色彩值小于所述当前色彩平均值,则对所述当前像素添加0。在将按照当前终端针对同一指定页面的显示图片中像素的排列顺序,将针对各像素添加的标记进行拼接,得到一个M位的二进制的数值(M为当前显示图片中所包含的像素的数量),即得到当前终端针对同一指定页面的显示图片的哈希值,将该哈希值作为当前终端针对同一指定页面的显示图片的特征信息(图像指纹)。在此基础上,根据压缩后的各终端针对同一指定页面的显示图片的特征信息,计算所述任意两个终端针对同一指定页面的显示图片之间的相似度,即为确定这两个显示图片的哈希值有多少位是不一样的,确定这两个哈希值的“汉明距离”,即两个等长哈希值之间的汉明距离是两个哈希值对应位置的不同字符的个数,这个不相同的数据位数即为意两个终端针对同一指定页面的显示图片之间相似度。
在所述任意两个显示图片的分辨率不相同的情况下,为了提高计算相似度的速度,进而提高兼容性检测的效率,可以降低色彩复杂度,即在将显示图片进行压缩后,简化显示图片的色彩,进而确定压缩后的各终端针对同一指定页面的显示图片中像素的色彩平均值。也即确定压缩后的各终端针对同一指定页面的显示图片中像素的色彩平均值之前,还包括:根据预设灰度等级对所述任意两个终端中针对同一指定页面的显示图片进行灰度处理。
相应地,确定压缩后的各终端针对同一指定页面的显示图片中像素的色彩平均值;根据当前色彩平均值和当前终端针对同一指定页面的显示图片中各像素的色彩值,确定所述当前终端针对同一指定页面的显示图片的特征信息,包括:
确定压缩后的各终端针对同一指定页面的显示图片中像素的灰度平均值;
根据当前灰度平均值和当前终端针对同一指定页面的显示图片中各像素的灰度值,确定所述当前终端针对同一指定页面的显示图片的特征信息。
具体的,灰度等级实时灰度级或者中间色调的基本内容,分别有16级、32级、64级三种方式,预设灰度等级是灰度等级,即16级、32级、64级三种方式中的任意一种。
实际应用中,在根据预设像素参数,将任意两个终端针对同一指定页面的显示图片进行压缩后,可以按照预设灰度等级,将压缩后的任意两个终端中针对同一指定页面的显示图片进行灰度处理,然后分别确定各个显示图片中各像素的灰度值,然后基于当前显示图片中各像素的灰度值,压缩后的各终端针对同一指定页面的显示图片中像素的灰度平均值,最后基于当前灰度平均值和当前终端针对同一指定页面的显示图片中各像素的灰度值,确定当前终端针对同一指定页面的显示图片的特征信息。
例如,预设灰度等级为64级。在根据预设像素参数将任意两个终端针对同一指定页面的显示图片缩小至8*8的尺寸,并使每个显示图片包含64个像素后,将每个显示图片转为64级灰度,即每个显示图片中所有像素只有64种颜色。然后分别确定计算每个显示图片中每个像素的灰度值,最后基于当前灰度平均值和当前终端针对同一指定页面的显示图片中各像素的灰度值,确定当前终端针对同一指定页面的显示图片的特征信息。
优选地,根据当前灰度平均值和当前终端针对同一指定页面的显示图片中各像素的灰度值,确定所述当前终端针对同一指定页面的显示图片的特征信息的具体实现过程可以为:从所述当前终端针对同一指定页面的显示图片的第一个像素开始,依次比较当前像素的灰度值与所述当前灰度平均值;若所述当前像素的灰度值大于或等于所述当前灰度平均值,则对所述当前像素添加第一标记;若所述当前像素的灰度值小于所述当前灰度平均值,则对所述当前像素添加第二标记;按照所述当前终端针对同一指定页面的显示图片中像素的排列顺序,将针对各像素添加的标记进行拼接,得到所述当前终端针对同一指定页面的显示图像的特征信息。
此外,在计算任意两个终端针对同一指定页面的显示图片之间的相似度之前,还可以根据任意两个终端针对同一指定页面的显示图片的分辨率是否相同进行分组,若相同,将这两个显示图片划分至第一分组,若不相同,将这两个显示图片划分至第二分组。然后在采用对应的计算相似度的方法,计算任意两个终端针对同一指定页面的显示图片之间的相似度。
例如,有显示图片U1、U2、U3、U4、U5,其中显示图片U1和显示图片U2的分辨率相同、显示图片U4和显示图片U5的分辨率相同,那么将(U1、U2)和(U4、U5)划分至第一分组,将(U1、U3)、(U1、U4)、(U1、U5)、(U2、U3)、(U2、U4)、(U2、U5)、(U3、U4)和(U3、U5)划分至第二分组。
步骤106:根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度。
在确定了任意两个终端针对同一指定页面的显示图片之间的相似度的基础上,进一步地,根据任意两个终端针对同一指定页面的显示图片之间的相似度,确定各机型的终端针对所述目标应用的目标相似度。
具体的,目标相似度是指各机型针对目标应用的相似度,可以是平均相似度、余弦相似度等。
实际应用中,可以将为任意两个终端针对同一指定页面的显示图片之间的相似度设置权重,确定各任意两个终端针对同一指定页面的显示图片之间的相似度与其对应的权重的乘积,再将各个乘积相加得到总和,最后将总和除以显示图片的数量与1的差值,得到各机型的终端针对同一指定页面的显示图片的中间相似度,如式3所示,在基于各机型的终端针对同一指定页面的显示图片的中间相似度,确定各机型的终端针对所述目标应用的目标相似度。
式3中,Hk为各机型的终端中第k个终端针对目标应用的目标相似度;P为终端的数量,或者机型的数量;hki为第k个终端与第i个终端针对同一指定页面的显示图片之间的相似度;wki为hki为的权重,即第k个终端与第i个终端针对同一指定页面的显示图片之间的相似度的权重;N*为正整数。
为了提高确定目标相似度的速率,可以任意两个终端针对同一指定页面的显示图片之间的相似度设置权重均设置为1,即确定各任意两个终端针对同一指定页面的显示图片之间的相似度设置权重的总和,最后将总和除以显示图片的数量与1的差值,得到各机型的终端针对同一指定页面的显示图片的中间相似度。也即根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度,包括:
根据所述任意两个终端针对同一指定页面的显示图片之间的相似度计算各终端针对同一指定页面的显示图片的平均相似度;
根据所述各终端针对同一指定页面的显示图片的平均相似度,确定所述各机型的终端针对所述目标应用的目标相似度。
实际应用中,在得到任意两个终端针对同一指定页面的显示图片之间的相似度之后,计算这些显示图片之间的相似度的平均值,即计算各终端针对同一指定页面的显示图片的平均相似度,如式4所示。进一步地,根据各终端针对同一指定页面的显示图片的平均相似度,分别确定各机型的终端针对所述目标应用的目标相似度。
式4中,Hk为各机型的终端中第k个终端针对目标应用的目标相似度;P为终端的数量,或者机型的数量;hki为第k个终端与第i个终端针对同一指定页面的显示图片之间的相似度;N*为正整数。
例如,有3个不同机型的终端G1、G2和G3,终端G1对应的显示图片GT1、终端G2对应的显示图片GT2、终端G3对应的显示图片GT3。其中显示图片GT1与显示图片GT2相似度为L1、显示图片GT1与显示图片GT3相似度为L2、显示图片GT2与显示图片GT3相似度为L3,则显示图片GT1的平均相似度为AL1=(L1+L2)/2,显示图片GT2的平均相似度为AL2=(L1+L3)/2,显示图片GT1的平均相似度为AL3=(L1+L2)/2。进一步地,根据平均相似度AL1确定终端G1针对目标应用的目标相似度、根据平均相似度AL2确定终端G1针对目标应用的目标相似度、根据平均相似度AL3确定终端G1针对目标应用的目标相似度。
需要说明的是,本申请中,可以至将当前机型的终端针对同一指定页面的显示图片的平均相似度作为当前机型的终端针对目标应用的目标相似度,如将上述平均相似度AL1直接作为确定终端G1针对目标应用的目标相似度。还可以将当前机型的终端针对各个指定页面的显示图片的平均相似度的平均值,作为当前机型的终端针对目标应用的目标相似度,例如目标应用有2个页面:第一页面和第二页面,当前机型的终端针对第一页面的显示图片的平均相似度为AL11,当前机型的终端针对第二页面的显示图片的平均相似度为AL12,则当前机型的终端针对目标应用的目标相似度为(AL11+AL12)/2。
步骤108:确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
在根据任意两个终端针对同一指定页面的显示图片之间的相似度,确定各机型的终端针对目标应用的目标相似度的基础上,进一步地,根据目标相似度和相似度阈值确定终端是否兼容目标应用。
具体的,相似度阈值是指预先设置的用于衡量终端是否兼容目标应用的相似度。
实际应用中,当某个机型的终端针对目标应用的目标相似度大于或等于相似度阈值时,则认为该机型的终端兼容所述目标应用;当某个机型的终端针对目标应用的目标相似度小于相似度阈值时,则认为该机型的终端不兼容所述目标应用。
例如,相似度阈值为0.6,机型为XJ-1的终端针对目标应用的目标相似度为0.8,则机型为XJ-1的终端兼容目标应用,机型为XJ-2的终端针对目标应用的目标相似度为0.5,则机型为XJ-2的终端不兼容目标应用。
为了避免计算任意两个终端针对同一指定页面的显示图片之间的相似度、确定各机型的终端针对目标应用的目标相似度等过程中参数的选取不恰当,造成将兼容目标应用的终端误判为不兼容,可以获取对目标相似度小于相似度阈值的终端进行校验结果,进而判断该终端是否兼容目标应用,也即确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用之前,包括:
获取所述目标相似度小于所述相似度阈值的终端的校验结果;
相应地,所述确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用,包括:
在所述校验结果为通过的情况下,确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
实际应用中,在确定某些机型的终端针对目标应用的目标相似度小于相似度阈值时,可以对目标相似度小于相似度阈值的终端进行校验,该校验过程为将目标相似度小于相似度阈值的终端针对目标应用指定页面的显示图片发送给运营维护等各方人员进行校验,再反馈校验结果,即获取目标相似度小于所述相似度阈值的终端的校验结果。如果检验结果为通过,则说明该目标相似度小于相似度阈值的终端确实不兼容所述目标应用。
此外,在确定目标相似度小于相似度阈值的终端确实不兼容所述目标应用后,需要运行维护人员对目标应用进行研发修改,以便在该机型的终端上可以正常运行目标应用。但在修改后,目标应用仍然有可能会出现兼容性问题,因此需要回归测试,即确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用之后,包括:
获取修改后的目标应用;
获取各机型的终端打开修改后的所述目标应用中指定页面的显示图片;
继续执行所述计算任意两个终端针对同一指定页面的显示图片之间的相似度的步骤。
实际应用中,需要获取运行维护人员修改后的目标应用,然后进行回归测试,即获取各机型的终端打开修改后的所述目标应用中指定页面的显示图片,计算任意两个终端针对同一指定页面的显示图片之间的相似度等,再次进行兼容性测试的过程。直至所有的各机型的终端兼容目标应用为止。
如果检验结果为不通过,则说明计算任意两个终端针对同一指定页面的显示图片之间的相似度、确定各机型的终端针对目标应用的目标相似度等过程中参数的选取不恰当,也即预设滑动窗、预设像素参数选取不合适,可以先调整预设滑动窗和预设像素参数,再次进行兼容性测试。也即获取所述目标相似度低于所述相似度阈值的终端的校验结果之后,还包括:
在所述校验结果为不通过的情况下,获取调整后的预设滑动窗和调整后的预设像素参数;
继续执行所述计算任意两个终端针对同一指定页面的显示图片之间的相似度的步骤。
实际应用中,在确定目标相似度低于相似度阈值的终端出现问题,需要调整预设滑动窗和预设像素参数,该调整过程可以是运行维护人员根据人为经验进行调整,也可以是运行维护人员根据目标相似度小于相似度阈值的终端的目标相似度与相似度阈值的差值进行调整,还可以是机器自动根据目标相似度小于相似度阈值的终端的目标相似度与相似度阈值的差值进行调整。然后获取调整后的预设滑动窗和调整后的预设像素参数,执行计算任意两个终端针对同一指定页面的显示图片之间的相似度以及后续过程。直至所有的各机型的终端兼容目标应用为止。
优选地,在调整预设滑动窗时,可以增大滑动窗的尺寸,以便于减小分块大小;在调整预设像素参数时,可以提高压缩程度,也即提高预设尺寸和预设像素数。需要说明的是,在增大滑动窗的尺寸时,可以根据第一预设数值增大滑动窗的尺寸,如第一预设数值为0.1,则将滑动窗的尺寸中长和宽各增加0.1倍,即调整后滑动窗的长为原来的1.1倍、调整后滑动窗的宽也为原来的1.1倍;在提高预设尺寸和预设像素数时,可以根据第二预设数值提高预设尺寸和预设像素数,如第二预设数值为1,则将预设尺寸的长和宽各增加1,根据调整后的预设尺寸确定预设像素数,其中预设像素数为预设尺寸中长和宽的乘积。
本申请提供的兼容性测试方法,通过获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;然后计算任意两个终端针对同一指定页面的显示图片之间的相似度;再根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度;最后确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用,实现了自动识别出海量的不同机型的终端中同一个指定页面中存在兼容性问题的机型,无需人工介入,不仅降低了人工成本,还提高了兼容性测试的速度和准确率。
下述结合附图3,以本申请提供的兼容性测试方法在手机应用中的应用为例,对所述兼容性测试方法进行进一步说明。其中,图3示出了本申请一实施例提供的一种应用于手机应用的兼容性测试方法的处理流程图,具体包括以下步骤:
步骤302:获取各机型的手机打开目标手机应用中指定页面的显示图片,所述指定页面为所述目标手机应用中的任意一个页面。
步骤304:判断所述任意两个手机针对同一指定页面的显示图片的分辨率是否相同。
若是,执行步骤306,若否,执行步骤314。
步骤306:利用预设滑动窗,将任意两个手机针对同一指定页面的显示图片分别进行分块处理。
步骤308:将所述任意两个显示图片进行灰度处理。
步骤310:利用结构相似性算法,计算灰度处理后的所述任意两个手机针对同一指定页面的显示图片中对应分块之间的相似度。
步骤312:将所述任意两个手机针对同一指定页面的显示图片中对应分块之间的相似度的平均值,确定为所述任意两个手机针对同一指定页面的显示图片之间的相似度。
步骤314:根据预设像素参数,将所述任意两个手机针对同一指定页面的显示图片进行压缩。
步骤316:根据预设灰度等级对所述任意两个手机中针对同一指定页面的显示图片进行灰度处理。
步骤318:确定压缩后的各手机针对同一指定页面的显示图片中像素的灰度平均值。
步骤320:根据当前灰度平均值和当前手机针对同一指定页面的显示图片中各像素的灰度值,确定所述当前手机针对同一指定页面的显示图片的特征信息。
在本实施例的一个或多个实施方式中,根据当前灰度平均值和当前手机针对同一指定页面的显示图片中各像素的灰度值,确定所述当前手机针对同一指定页面的显示图片的特征信息的具体实现过程可以为:
从所述当前手机针对同一指定页面的显示图片的第一个像素开始,依次比较当前像素的灰度值与所述当前灰度平均值;
若所述当前像素的灰度值大于或等于所述当前灰度平均值,则对所述当前像素添加第一标记;
若所述当前像素的灰度值小于所述当前灰度平均值,则对所述当前像素添加第二标记;
按照所述当前手机针对同一指定页面的显示图片中像素的排列顺序,将针对各像素添加的标记进行拼接,得到所述当前手机针对同一指定页面的显示图像的特征信息。
步骤322:根据压缩后的各手机针对同一指定页面的显示图片的特征信息,计算所述任意两个手机针对同一指定页面的显示图片之间的相似度。
在本实施例的一个或多个实施方式中,根据压缩后的各手机针对同一指定页面的显示图片的特征信息,计算所述任意两个手机针对同一指定页面的显示图片之间的相似度的具体实现过程可以为:
根据所述任意两个手机针对同一指定页面的显示图片之间的相似度计算各手机针对同一指定页面的显示图片的平均相似度;
根据所述各手机针对同一指定页面的显示图片的平均相似度,确定所述各机型的手机针对所述目标手机应用的目标相似度。
步骤324:判断各机型的手机针对所述目标手机应用的目标相似度是否小于相似度阈值。
若否,执行步骤326,若是,执行步骤328。
步骤326:确定所述目标相似度大于或等于所述相似度阈值的手机兼容所述目标手机应用。
步骤328:获取所述目标相似度小于所述相似度阈值的手机的校验结果。
步骤330:判断校验结果是否为通过。
若是,执行步骤332,若否,执行步骤338。
步骤332:确定所述目标相似度小于相似度阈值的手机不兼容所述目标手机应用。
步骤334:获取修改后的目标手机应用。
步骤336:获取各机型的手机打开修改后的所述目标手机应用中指定页面的显示图片。
之后,继续执行步骤304。
步骤338:获取调整后的所述预设滑动窗和调整后的所述预设像素参数。
之后,继续执行步骤304。
本申请提供的兼容性测试装置,通过获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;然后计算任意两个终端针对同一指定页面的显示图片之间的相似度;再根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度;最后确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用,实现了自动识别出海量的不同机型的终端中同一个指定页面中存在兼容性问题的机型,无需人工介入,不仅降低了人工成本,还提高了兼容性测试的速度和准确率。
与上述方法实施例相对应,本申请还提供了兼容性测试装置实施例,图4示出了本申请一实施例提供的一种兼容性测试装置的结构示意图。如图4所示,该装置包括:
获取模块402,被配置为获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;
计算模块404,被配置为计算任意两个终端针对同一指定页面的显示图片之间的相似度;
第一确定模块406,被配置为根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度;
第二确定模块408,被配置为确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
在本实施例的一个或多个实施方式中,所述计算模块404,包括第一计算子模块,被配置为:
在所述任意两个终端针对同一指定页面的显示图片的分辨率相同的情况下,利用预设滑动窗,将任意两个终端针对同一指定页面的显示图片分别进行分块处理;
计算所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度;
根据所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度,确定所述任意两个终端针对同一指定页面的显示图片之间的相似度。
在本实施例的一个或多个实施方式中,所述第一计算子模块,还被配置为:
将所述任意两个显示图片进行灰度处理;
利用结构相似性算法,计算灰度处理后的所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度。
在本实施例的一个或多个实施方式中,所述第一计算子模块,还被配置为:
将所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度的平均值,确定为所述任意两个终端针对同一指定页面的显示图片之间的相似度。
在本实施例的一个或多个实施方式中,所述计算模块404,包括第二计算子模块,被配置为:
在所述任意两个显示图片的分辨率不相同的情况下,根据预设像素参数,将所述任意两个终端针对同一指定页面的显示图片进行压缩;
根据压缩后的各终端针对同一指定页面的显示图片的特征信息,计算所述任意两个终端针对同一指定页面的显示图片之间的相似度。
在本实施例的一个或多个实施方式中,所述第二计算子模块,还被配置为:
确定压缩后的各终端针对同一指定页面的显示图片中像素的色彩平均值;
根据当前色彩平均值和当前终端针对同一指定页面的显示图片中各像素的色彩值,确定所述当前终端针对同一指定页面的显示图片的特征信息。
在本实施例的一个或多个实施方式中,所述第二计算子模块,还被配置为:
根据预设灰度等级对所述任意两个终端中针对同一指定页面的显示图片进行灰度处理;
确定压缩后的各终端针对同一指定页面的显示图片中像素的灰度平均值;
根据当前灰度平均值和当前终端针对同一指定页面的显示图片中各像素的灰度值,确定所述当前终端针对同一指定页面的显示图片的特征信息。
在本实施例的一个或多个实施方式中,所述第二计算子模块,还被配置为:
从所述当前终端针对同一指定页面的显示图片的第一个像素开始,依次比较当前像素的色彩值与所述当前色彩平均值;
若所述当前像素的色彩值大于或等于所述当前色彩平均值,则对所述当前像素添加第一标记;
若所述当前像素的色彩值小于所述当前色彩平均值,则对所述当前像素添加第二标记;
按照所述当前终端针对同一指定页面的显示图片中像素的排列顺序,将针对各像素添加的标记进行拼接,得到所述当前终端针对同一指定页面的显示图像的特征信息。
在本实施例的一个或多个实施方式中,所述第二确定模块408,还被配置为:
获取所述目标相似度小于所述相似度阈值的终端的校验结果;
在所述校验结果为通过的情况下,确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
在本实施例的一个或多个实施方式中,所述装置还包括第一执行模块,被配置为:
获取修改后的目标应用;
获取各机型的终端打开修改后的所述目标应用中指定页面的显示图片;
继续执行所述计算任意两个终端针对同一指定页面的显示图片之间的相似度的步骤。
在本实施例的一个或多个实施方式中,所述装置还包括第二执行模块,被配置为:
在所述校验结果为不通过的情况下,获取调整后的预设滑动窗和调整后的预设像素参数;
继续执行所述计算任意两个终端针对同一指定页面的显示图片之间的相似度的步骤。
在本实施例的一个或多个实施方式中,所述第一确定模块406,还被配置为:
根据所述任意两个终端针对同一指定页面的显示图片之间的相似度计算各终端针对同一指定页面的显示图片的平均相似度;
根据所述各终端针对同一指定页面的显示图片的平均相似度,确定所述各机型的终端针对所述目标应用的目标相似度。
本申请提供的兼容性测试装置,通过获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;然后计算任意两个终端针对同一指定页面的显示图片之间的相似度;再根据所述任意两个终端针对同一指定页面的显示图片之间的相似度,确定所述各机型的终端针对所述目标应用的目标相似度;最后确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用,实现了自动识别出海量的不同机型的终端中同一个指定页面中存在兼容性问题的机型,无需人工介入,不仅降低了人工成本,还提高了兼容性测试的速度和准确率。
上述为本实施例的一种兼容性测试装置的示意性方案。需要说明的是,该兼容性测试装置的技术方案与上述的兼容性测试方法的技术方案属于同一构思,兼容性测试装置的技术方案未详细描述的细节内容,均可以参见上述兼容性测试方法的技术方案的描述。
图5示出了根据本申请一实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
其中,处理器520执行所述计算机指令时实现所述的兼容性测试方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的兼容性测试方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述兼容性测试方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现如前所述兼容性测试方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的兼容性测试方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述兼容性测试方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

Claims (14)

1.一种兼容性测试方法,其特征在于,包括:
获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;
计算任意两个终端针对同一指定页面的显示图片之间的相似度;
根据所述任意两个终端针对同一指定页面的显示图片之间的相似度计算各终端针对同一指定页面的显示图片的中间相似度,其中,所述中间相似度根据各任意两个终端针对同一指定页面的显示图片之间的相似度与其对应的权重的乘积,将各个乘积相加得到总和,将总和除以显示图片的数量与1的差值得到;
根据所述各终端针对同一指定页面的显示图片的中间相似度,确定所述各机型的终端针对所述目标应用的目标相似度;
确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
2.根据权利要求1所述的方法,其特征在于,在所述任意两个终端针对同一指定页面的显示图片的分辨率相同的情况下,所述计算任意两个终端针对同一指定页面的显示图片之间的相似度,包括:
利用预设滑动窗,将任意两个终端针对同一指定页面的显示图片分别进行分块处理;
计算所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度;
根据所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度,确定所述任意两个终端针对同一指定页面的显示图片之间的相似度。
3.根据权利要求2所述的方法,其特征在于,所述计算所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度之前,还包括:
将所述任意两个显示图片进行灰度处理;
相应地,所述计算所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度,包括:
利用结构相似性算法,计算灰度处理后的所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度,确定所述任意两个终端针对同一指定页面的显示图片之间的相似度,包括:
将所述任意两个终端针对同一指定页面的显示图片中对应分块之间的相似度的平均值,确定为所述任意两个终端针对同一指定页面的显示图片之间的相似度。
5.根据权利要求1所述的方法,其特征在于,在所述任意两个显示图片的分辨率不相同的情况下,所述计算任意两个终端针对同一指定页面的显示图片之间的相似度,包括:
根据预设像素参数,将所述任意两个终端针对同一指定页面的显示图片进行压缩;
根据压缩后的各终端针对同一指定页面的显示图片的特征信息,计算所述任意两个终端针对同一指定页面的显示图片之间的相似度。
6.根据权利要求5所述的方法,其特征在于,所述根据压缩后的各终端针对同一指定页面的显示图片的特征信息,计算所述任意两个终端针对同一指定页面的显示图片之间的相似度之前,还包括:
确定压缩后的各终端针对同一指定页面的显示图片中像素的色彩平均值;
根据当前色彩平均值和当前终端针对同一指定页面的显示图片中各像素的色彩值,确定所述当前终端针对同一指定页面的显示图片的特征信息。
7.根据权利要求6所述的方法,其特征在于,所述确定压缩后的各终端针对同一指定页面的显示图片中像素的色彩平均值之前,还包括:
根据预设灰度等级对所述任意两个终端中针对同一指定页面的显示图片进行灰度处理;
相应地,所述确定压缩后的各终端针对同一指定页面的显示图片中像素的色彩平均值;根据当前色彩平均值和当前终端针对同一指定页面的显示图片中各像素的色彩值,确定所述当前终端针对同一指定页面的显示图片的特征信息,包括:
确定压缩后的各终端针对同一指定页面的显示图片中像素的灰度平均值;
根据当前灰度平均值和当前终端针对同一指定页面的显示图片中各像素的灰度值,确定所述当前终端针对同一指定页面的显示图片的特征信息。
8.根据权利要求6所述的方法,其特征在于,所述根据当前色彩平均值和当前终端针对同一指定页面的显示图片中各像素的色彩值,确定所述当前终端针对同一指定页面的显示图片的特征信息,包括:
从所述当前终端针对同一指定页面的显示图片的第一个像素开始,依次比较当前像素的色彩值与所述当前色彩平均值;
若所述当前像素的色彩值大于或等于所述当前色彩平均值,则对所述当前像素添加第一标记;
若所述当前像素的色彩值小于所述当前色彩平均值,则对所述当前像素添加第二标记;
按照所述当前终端针对同一指定页面的显示图片中像素的排列顺序,将针对各像素添加的标记进行拼接,得到所述当前终端针对同一指定页面的显示图像的特征信息。
9.根据权利要求1所述的方法,其特征在于,所述确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用之前,包括:
获取所述目标相似度小于所述相似度阈值的终端的校验结果;
相应地,所述确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用,包括:
在所述校验结果为通过的情况下,确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
10.根据权利要求1或9所述的方法,其特征在于,所述确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用之后,包括:
获取修改后的目标应用;
获取各机型的终端打开修改后的所述目标应用中指定页面的显示图片;
继续执行所述计算任意两个终端针对同一指定页面的显示图片之间的相似度的步骤。
11.根据权利要求9所述的方法,其特征在于,所述获取所述目标相似度低于所述相似度阈值的终端的校验结果之后,还包括:
在所述校验结果为不通过的情况下,获取调整后的预设滑动窗和调整后的预设像素参数;
继续执行所述计算任意两个终端针对同一指定页面的显示图片之间的相似度的步骤。
12.一种兼容性测试装置,其特征在于,包括:
获取模块,被配置为获取各机型的终端打开目标应用中指定页面的显示图片,所述指定页面为所述目标应用中的任意一个页面;
计算模块,被配置为计算任意两个终端针对同一指定页面的显示图片之间的相似度;
第一确定模块,被配置为根据所述任意两个终端针对同一指定页面的显示图片之间的相似度计算各终端针对同一指定页面的显示图片的中间相似度,其中,所述中间相似度根据各任意两个终端针对同一指定页面的显示图片之间的相似度与其对应的权重的乘积,将各个乘积相加得到总和,将总和除以显示图片的数量与1的差值得到;根据所述各终端针对同一指定页面的显示图片的中间相似度,确定所述各机型的终端针对所述目标应用的目标相似度;
第二确定模块,被配置为确定所述目标相似度小于相似度阈值的终端不兼容所述目标应用。
13.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述计算机指令时实现权利要求1-11任意一项所述方法的步骤。
14.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该计算机指令被处理器执行时实现权利要求1-11任意一项所述方法的步骤。
CN202110866879.8A 2021-07-29 2021-07-29 兼容性测试方法及装置 Active CN113506291B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110866879.8A CN113506291B (zh) 2021-07-29 2021-07-29 兼容性测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110866879.8A CN113506291B (zh) 2021-07-29 2021-07-29 兼容性测试方法及装置

Publications (2)

Publication Number Publication Date
CN113506291A CN113506291A (zh) 2021-10-15
CN113506291B true CN113506291B (zh) 2024-03-26

Family

ID=78015225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110866879.8A Active CN113506291B (zh) 2021-07-29 2021-07-29 兼容性测试方法及装置

Country Status (1)

Country Link
CN (1) CN113506291B (zh)

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102576302A (zh) * 2009-11-30 2012-07-11 马丁·劳比赫 微处理器及用于微处理器上增强精确度乘积和计算的方法
CN105786896A (zh) * 2014-12-24 2016-07-20 阿里巴巴集团控股有限公司 一种页面侧边栏的颜色渲染方法及装置
CN106886491A (zh) * 2017-01-17 2017-06-23 博彦科技股份有限公司 网页兼容性测试方法及装置
CN107820134A (zh) * 2017-11-14 2018-03-20 国家电网公司 一种视频应用的控制方法和装置
CN108121647A (zh) * 2016-11-26 2018-06-05 上海亿账通互联网科技有限公司 Html5页面的浏览器兼容性测试方法及装置
CN108334451A (zh) * 2018-01-30 2018-07-27 无线生活(杭州)信息科技有限公司 页面兼容性测试方法及装置
CN108446227A (zh) * 2018-03-12 2018-08-24 广东睿江云计算股份有限公司 一种基于selenium的虚拟机浏览器兼容性测试方法
CN109408362A (zh) * 2018-08-21 2019-03-01 中国平安人寿保险股份有限公司 应用程序兼容性测试方法、装置、系统及存储介质
CN109491888A (zh) * 2018-09-29 2019-03-19 中国平安人寿保险股份有限公司 应用程序兼容性测试方法、装置、及计算机可读存储介质
CN109784369A (zh) * 2018-12-14 2019-05-21 深圳壹账通智能科技有限公司 H5页面测试方法与装置、电子设备、存储介质
CN110275820A (zh) * 2018-03-15 2019-09-24 阿里巴巴集团控股有限公司 页面兼容性测试方法、系统及设备
CN110347587A (zh) * 2019-05-30 2019-10-18 平安银行股份有限公司 App兼容性测试方法、装置、计算机设备及存储介质
CN110825651A (zh) * 2019-12-11 2020-02-21 北京海益同展信息科技有限公司 网页兼容性测试方法、装置、系统及存储介质
CN110851368A (zh) * 2019-11-19 2020-02-28 天津车之家数据信息技术有限公司 一种多设备协同测试方法、装置、计算设备和系统
CN111198815A (zh) * 2019-12-24 2020-05-26 中移(杭州)信息技术有限公司 用户界面的兼容性测试方法及装置
CN112115059A (zh) * 2020-09-27 2020-12-22 平安科技(深圳)有限公司 应用程序兼容性测试的方法、装置及计算机设备
CN112286821A (zh) * 2020-11-03 2021-01-29 深圳壹账通智能科技有限公司 Html5页面兼容性的测试方法、装置、设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150205882A1 (en) * 2007-03-19 2015-07-23 Dean Vukas Testing accessibility and compatibility of websites and web-based software
US9037965B2 (en) * 2012-02-13 2015-05-19 Accenture Global Services Limited Browser and operating system compatibility

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102576302A (zh) * 2009-11-30 2012-07-11 马丁·劳比赫 微处理器及用于微处理器上增强精确度乘积和计算的方法
CN105786896A (zh) * 2014-12-24 2016-07-20 阿里巴巴集团控股有限公司 一种页面侧边栏的颜色渲染方法及装置
CN108121647A (zh) * 2016-11-26 2018-06-05 上海亿账通互联网科技有限公司 Html5页面的浏览器兼容性测试方法及装置
CN106886491A (zh) * 2017-01-17 2017-06-23 博彦科技股份有限公司 网页兼容性测试方法及装置
CN107820134A (zh) * 2017-11-14 2018-03-20 国家电网公司 一种视频应用的控制方法和装置
CN108334451A (zh) * 2018-01-30 2018-07-27 无线生活(杭州)信息科技有限公司 页面兼容性测试方法及装置
CN108446227A (zh) * 2018-03-12 2018-08-24 广东睿江云计算股份有限公司 一种基于selenium的虚拟机浏览器兼容性测试方法
CN110275820A (zh) * 2018-03-15 2019-09-24 阿里巴巴集团控股有限公司 页面兼容性测试方法、系统及设备
CN109408362A (zh) * 2018-08-21 2019-03-01 中国平安人寿保险股份有限公司 应用程序兼容性测试方法、装置、系统及存储介质
CN109491888A (zh) * 2018-09-29 2019-03-19 中国平安人寿保险股份有限公司 应用程序兼容性测试方法、装置、及计算机可读存储介质
CN109784369A (zh) * 2018-12-14 2019-05-21 深圳壹账通智能科技有限公司 H5页面测试方法与装置、电子设备、存储介质
CN110347587A (zh) * 2019-05-30 2019-10-18 平安银行股份有限公司 App兼容性测试方法、装置、计算机设备及存储介质
CN110851368A (zh) * 2019-11-19 2020-02-28 天津车之家数据信息技术有限公司 一种多设备协同测试方法、装置、计算设备和系统
CN110825651A (zh) * 2019-12-11 2020-02-21 北京海益同展信息科技有限公司 网页兼容性测试方法、装置、系统及存储介质
CN111198815A (zh) * 2019-12-24 2020-05-26 中移(杭州)信息技术有限公司 用户界面的兼容性测试方法及装置
CN112115059A (zh) * 2020-09-27 2020-12-22 平安科技(深圳)有限公司 应用程序兼容性测试的方法、装置及计算机设备
CN112286821A (zh) * 2020-11-03 2021-01-29 深圳壹账通智能科技有限公司 Html5页面兼容性的测试方法、装置、设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Web应用界面跨浏览器兼容性的自动检测方法;王欢欢;吴毅坚;赵文耘;;计算机科学(第S2期);全文 *
Zhiyu Chen ; Tianliang Peng ; Shaoyan Gong ; Limin Li ; Longchuan Yan ; Hao Han."Intelligence Compatibility Test of Web Services-based Power Business".《2018 IEEE 3rd Advanced Information Technology, Electronic and Automation Control Conference (IAEAC)》.2018,全文. *
电力行业Web应用兼容性测试;陈智雨;汪明;巩少岩;王栋;史睿;葛冰玉;;电力信息与通信技术(第06期);全文 *

Also Published As

Publication number Publication date
CN113506291A (zh) 2021-10-15

Similar Documents

Publication Publication Date Title
CN110889457B (zh) 样本图像分类训练方法、装置、计算机设备和存储介质
CN112162930A (zh) 一种控件识别的方法、相关装置、设备及存储介质
CN110929569A (zh) 人脸识别方法、装置、设备及存储介质
CN107292307B (zh) 一种倒置汉字验证码自动识别方法及系统
CN110930296A (zh) 图像处理方法、装置、设备及存储介质
EP3905672B1 (en) Color space mapping method and device, computer readable storage medium and apparatus
CN111028222A (zh) 视频检测方法和装置、计算机存储介质及相关设备
CN110599554A (zh) 人脸肤色的识别方法和装置、存储介质及电子装置
CN113421312A (zh) 一种对黑白视频的着色方法、装置、存储介质及终端
CN115131714A (zh) 视频图像智能检测分析方法及系统
CN115082400A (zh) 一种图像处理方法、装置、计算机设备及可读存储介质
CN113298753A (zh) 敏感肌的检测方法、图像处理方法、装置及设备
CN109615620B (zh) 图像压缩度识别方法、装置、设备及计算机可读存储介质
CN112489144B (zh) 图像处理方法、图像处理装置、终端设备及存储介质
CN113506291B (zh) 兼容性测试方法及装置
US11615609B2 (en) Learning apparatus, inferring apparatus, learning method, program, and inferring method
CN111277724B (zh) 异常运行应用的检测方法、装置、电子设备及存储介质
CN113408517B (zh) 一种图像显示方法及装置、电子设备
CN112801997B (zh) 图像增强质量评估方法、装置、电子设备及存储介质
CN112132000B (zh) 一种活体检测方法、装置、计算机可读介质及电子设备
CN112288748B (zh) 一种语义分割网络训练、图像语义分割方法及装置
CN113191376A (zh) 图像处理方法、装置、电子设备和可读存储介质
CN111797922A (zh) 文本图像分类方法及装置
CN111325658A (zh) 一种彩色图像自适应去色方法
CN118247696B (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