用户界面的兼容性测试方法及装置与流程

文档序号:20874936发布日期:2020-05-26 16:22阅读:228来源:国知局
用户界面的兼容性测试方法及装置与流程

本发明实施例涉及数据业务技术领域,特别涉及一种用户界面的兼容性测试方法及装置。



背景技术:

在计算机或手机的应用程序发布之前,测试人员需要针对不同的机型,不同系统平台,不同网络或不同厂商等的兼容问题场景进行兼容性的测试,常见的兼容性问题包括:应用程序安装失败,应用程序启动失败,应用程序运行失败,或应用程序的用户界面异常等。在针对用户界面异常的兼容性问题进行测试时,主要通过以下两种方式进行用户界面的异常图片的识别。第一种方式是通过人工对下载待测试的图片进行异常的识别;第二中方式是通过图片比对算法,将待测试的图片与作为基准的异常图片进行对比,从而判定该待测试的图片是否为异常图片。

发明人发现相关技术中至少存在如下问题:首先,利用人力对图片进行识别,会给测试人员带来繁重而重复性的工作,浪费了大量的人力,同时基于测试人员的主观感受,识别的结果也会有很大的不同,使识别结果不够准确。其次,利用图片比对算法进行识别需要预先生成基准图片,对于未准备基准图片的异常情况无法进行识别,这样就使兼容性测试的范围有一定的局限性,测试结果不够准确。



技术实现要素:

本发明实施方式的目的在于提供一种用户界面的兼容性测试方法及装置,可以通过训练好的卷积神经网络模型识别一些人为无法预见的用户界面兼容性异常的问题,提高识别的准确性。

为解决上述技术问题,本发明的实施例提供了一种用户界面的兼容性测试方法,包括:获取用户界面作为待测试图片;将待测试图片输入卷积神经网络模型中;其中,卷积神经网络模型的训练集中至少包括多个第二异常图片,第二异常图片由至少两个第一异常图片合成,且第一异常图片为预先获取的兼容性异常的用户界面;根据卷积神经网络模型的输出结果,确定用户界面的兼容性是否异常。

本发明的实施例还提供了一种用户界面的兼容性测试装置,包括:获取模块,输入模块,确定模块;获取模块用于获取用户界面作为待测试图片;输入模块用于将待测试图片输入卷积神经网络模型中;其中,卷积神经网络模型的训练集中至少包括多个第二异常图片,第二异常图片由至少两个第一异常图片合成,且第一异常图片为预先获取的兼容性异常的用户界面;确定模块用于根据卷积神经网络模型的输出结果,确定用户界面的兼容性是否异常。

本发明的实施例还提供了一种服务器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述用户界面的兼容性测试方法。

本发明的实施例还提供了一种存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述用户界面的兼容性测试方法。

本发明实施例相对于现有技术而言,在对用户界面进行兼容性测试时,获取用户界面作为待测试图片。将获取的待测试图片输入预先训练的卷积神经网络模型中,通过卷积神经网络模型识别待测试图片,并根据卷积神经网络模型输出的结果判定待测试图片是否存在兼容性问题。卷积神经网络模型的训练集至少包括第二异常图片,第二异常图片并非从实际存在的兼容性异常图片直接获取,也不是对直接获取的第一异常图片进行简单的缩放,旋转等操作而得到的,而是通过至少两个实际获取的第一异常图片进行合成,合成后的第二异常图片存在异常问题,但是第二异常图片中包含的特征并不容易被直接想到,所以通过第二异常图片训练的卷积神经网络模型可以识别出人为无法预见的用户界面的兼容性异常的问题,提高了识别范围及识别的准确性。从而在终端型号,操作系统及网络情况不同的复杂的应用场景,无法预测所出现的兼容性问题的情况下,也可以较为准确的识别出兼容性异常的问题,实现复杂的兼容性测试。

另外,第二异常图片的合成方式如下:确定待合成的第二异常图片的兼容性异常类型;获取至少两个兼容性异常类型的第一异常图片;将获取的第一异常图片输入预先训练好的深度对抗卷积神经网络模型中,通过深度对抗卷积神经网络模型对输入的第一异常图片进行合成,生成第二异常图片。通过深度对抗卷积神经网络模型进行第二异常图片的合成,从而提高合成第二异常图片的效率,且通过训练好的深度对抗卷积神经网络模型进行合成可以使合成后的第二异常图片中包含兼容性异常的问题相关的特征,提高了生成的第二异常图片的利用率。

另外,在生成第二异常图片之后,还包括:将第二异常图片的特征与预设特征进行匹配,得到匹配值;若匹配值达到预设阈值,则将第二异常图片添加至卷积神经网络模型的训练集。这样做可以使训练集内的用于训练模型的异常图片均携带有所需的特征,避免无用的异常图片影响模型训练的效率及准确性。

另外,在生成第二异常图片之后,还包括:对第二异常图片进行图片预处理,生成第三异常图片;其中,图片预处理至少包括以下任一处理或其组合:翻转处理,尺度变化处理或随机扣取处理;将生成的第三异常图片添加至卷积神经网络模型的训练集。这样做可以通过简单的处理方式进一步增加训练集中异常图片的数量,通过大量且不同的异常图片对卷积神经网络模型进行训练可以进一步的提高卷积神经网络模型的识别精度,从而使识别结果更加准确。

另外,在获取用户界面作为待测试图片之后,还包括:获取用户界面所处终端的终端型号和操作系统版本;在确定用户界面的兼容性是否异常之后,还包括:若用户界面的兼容性异常,则记录终端型号和操作系统版本。这样做可以根据每次用户界面的兼容性测试后记录的终端型号和操作系统版本,预测最可能产生用户界面的兼容性问题的终端型号和操作系统版本号,从而可以针对该终端型号和操作系统版本号再次进行测试,有利于测试人员准确的确定用户界面的兼容性问题并解决该兼容性问题。

另外,在确定用户界面的兼容性是否异常之后,还包括:若用户界面的兼容性异常,则将待测试图片添加至卷积神经网络模型的训练集。这样做可以通过兼容性测试中得到的异常图片增加训练卷积神经网络模型的异常图片的数量,提高卷积神经网络模型的识别精度,从而提高用户界面的兼容性测试的准确性。

另外,获取用户界面作为待测试图片,包括:对用户界面进行截图处理;将截取的图片作为待测试图片。这样做在用户界面的兼容性测试过程中,自动获取待测试图片,无需人工截取待测试图片,减少了人力消耗。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1是根据本发明第一实施例中的用户界面的兼容性测试方法流程图;

图2是根据本发明第二实施例中的用户界面的兼容性测试方法流程图;

图3是根据本发明第三实施例中的用户界面的兼容性测试装置的结构示意图;

图4是根据本发明第四实施例中的服务器的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。

以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。

本发明的第一实施例涉及一种用户界面的兼容性测试方法,包括:获取用户界面作为待测试图片;将待测试图片输入卷积神经网络模型中;其中,卷积神经网络模型的训练集中至少包括多个第二异常图片,第二异常图片由至少两个第一异常图片合成,且第一异常图片为预先获取的兼容性异常的用户界面;根据卷积神经网络模型的输出结果,确定待测试的用户界面的兼容性是否异常,通过训练好的卷积神经网络模型识别一些人为无法预见的用户界面兼容性异常的问题,提高识别的准确性。下面对本实施例的用户界面的兼容性测试方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。

具体流程如图1所示,第一实施例涉及一种用户界面的兼容性测试方法,包括:

步骤101,获取用户界面作为待测试图片。

具体地说,在对应用的兼容性进行测试时,可以通过应用的用户界面是否发生异常判定应用的兼容性是否异常,若用户界面显示的信息异常,则说明该应用存在兼容性问题。用户界面异常情况至少包括以下任一情况,比如,在用户界面上以弹窗的形式显示网络连接异常,或者用户界面上文字或图片并未按预设规则进行排列,显示的文字或图片的大小与规定的大小不相同等,或者显示的文字或图片出现重影或模糊的现象等。

在根据用户界面进行兼容性测试时,首先需要获取用户界面作为待测试图片,从而可以根据待测试图片判定图片是否出现上述的异常情况。在获取待测试图片,可以在测试应用性能的过程中对用户界面进行截取,并将截取的用户界面作为待测试图片,也可以获取待测试图片时获取预先截取好的待测试图片进行测试。所获取的待测试图片的数量可以为一个,可以为多个,在获取的待测试图片的数量为多个时,所获取的待测试图片分别为不同的用户界面,从而可以使测试结果更加全面,提高测试的准确性。

以下对通过截取用户界面的方式获取待测试图片进行说明,在对应用进行性能测试时,需要执行一系列的预设操作,例如,点击操作,滑动操作,选取操作或移动操作等。在执行一个预设操作之后,对操作后的用户界面进行截取,并将截取的用户界面作为待测试图片。或者还可以根据预设的周期,以一定的时间间隔对测试中的当前用户界面进行截取,获取待测试图片。以这种方式截取待测试图片时,应用正常执行上述设置的一系列预设操作,从而保证截取到的多个待测试图片为不同用户界面,是测试结果更加全面。

步骤102,将待测试图片输入卷积神经网络模型中。

具体地说,在获取待测试图片之后,将获取的待测试图片输入预先训练好的卷积神经网络模型中。卷积神经网络模型由多个第二异常图片训练而成,而第二异常图片则是由至少两个兼容性异常的用户界面(第一异常图片)合成的,而非通过人为可以想到的将实际获取的第一异常图片进行简单放大或缩小操作获得,因此合成的第二异常图片相较于第一异常图片存在明显的不同之处,且存在的不同之处并不容易被想到,因此通过第二异常图片训练出的卷积神经网络模型可以识别到人为无法预见的兼容性异常出现的用户界面异常的情况。在终端型号,操作系统及网络情况不同的复杂当下环境下,测试过程中出现用户界面异常的情况并不仅仅局限于已出现过的异常情况,还存在一些人为无法预见的用户界面异常情况,这种复杂的环境下,利用第二异常图片训练的卷积神经网络模型可以识别更多种人为未预见的情况下出现的兼容性异常问题,也就可以避免较难预见的兼容问题未被识别的情况发生,可以更为准确的识别出兼容性异常的问题,实现复杂的兼容性测试。

在对第一异常图片进行合成得到第二异常图片时,可以将具有相同类型异常问题的至少两个第一异常图片进行特征值提取,并根据提取的特征值对至少两个第一异常图片进行合成,使合成后的第二异常图片也存在与第一异常图片相同类型的异常问题。

步骤103,根据卷积神经网络模型的输出结果,确定待测试的用户界面的兼容性是否异常。

具体地说,在将待测试图片输入训练好的卷积神经网络模型之后,训练好的卷积神经网络模型对待测试图片中的图像内容进行识别及计算,并输出识别的结果,通过识别的结果可以判定待测试图片是否存在异常问题,且可以确定出现的异常问题的种类。例如,训练好的卷积神经网络模型可以识别网络异常问题、文字重叠问题以及文字遮挡问题等,在将待测试图片输入训练好的卷积神经网络模型之后,训练好的卷积神经网络模型对待测试图片的特征进行识别,并将识别出的待测试图片的特征与卷积识别网络模型可以识别的各个异常问题对应的特征进行匹配,根据匹配结果得到待测试图片中存在各类异常问题的概率,并输出识别的结果,例如输出结果为:1-3%,2-30%,3-60%。上述输出的结果表示待测试图片有3%的概率存在网络异常问题,有30%概率存在文字重叠问题,有60%的概率存在文字遮挡问题,推测出这一待测试图片有较大概率存在文字遮挡问题,从而判定待测试的用户界面存在异常问题,所测试的应用兼容性异常。

另外,在判定待测试图片存在异常问题时,将该异常的待测试图片保存至卷积神经网络模型的训练集,从而扩充了卷积神经网络模型训练集的数量,在训练集的数量达到预设数量时,或在已达到预设的训练周期时,利用扩充后的训练集再次对卷积神经网络模型进行训练,从而减小卷积神经网络模型的识别误差,提高卷积神经网络模型识别的准确性。

在实际应用中,用户或测试人员可以利用云测试平台对终端的用户界面的兼容性进行测试,在测试之前用户或测试人员需选择兼容性测试的终端型号和操作系统版本,并选择所测试的应用软件,最后触发自动化测试执行。云测试平台自动执行测试,即自动截取用户界面作为待测试图片,并将待测试图片输入卷积神经网络模型,由卷积神经网络模型对待测试图片进行识别,并输出测试结果。在自动化测试结束之后,将卷积神经网络模型输出的测试结果显示给用户或测试人员。云测试平台在测试结束后还可以记录存在兼容性异常问题的终端型号和操作系统版本,并根据记录的终端型号和操作系统版本预测最可能出现用户界面的兼容性问题的终端型号和操作系统版本,并将预测的终端型号和操作系统版本作为下一次兼容性自动化测试的推荐选择,以便测试人员可以针对容易出现问题的终端型号和操作系统版本进行测试。

本发明实施例相对于现有技术而言,在对用户界面进行兼容性测试时,获取用户界面作为待测试图片。将获取的待测试图片输入预先训练的卷积神经网络模型中,通过卷积神经网络模型识别待测试图片,并根据卷积神经网络模型输出的结果判定待测试图片是否存在兼容性问题。卷积神经网络模型的训练集至少包括第二异常图片,第二异常图片并非从实际存在的兼容性异常图片直接获取,也不是对直接获取的第一异常图片进行简单的缩放,旋转等操作而得到的,而是通过至少两个实际获取的第一异常图片进行合成,合成后的第二异常图片存在异常问题,但是第二异常图片中包含的特征并不容易被直接想到,所以通过第二异常图片训练的卷积神经网络模型可以识别出人为无法预见的用户界面的兼容性异常的问题,提高了识别范围及识别的准确性。从而在终端型号,操作系统及网络情况不同的复杂的应用场景,无法预测所出现的兼容性问题的情况下,也可以较为准确的识别出兼容性异常的问题,实现复杂的兼容性测试。

本发明的第二实施例涉及一种用户界面的兼容性测试方法,在本发明第二实施例中对卷积神经网络模型的训练集的获取过程进行具体的说明,通过训练集内的异常图片对卷积神经网络进行训练,并通过训练好的卷积神经网络模型对待测试图片进行识别从而实现兼容性测试,通过训练好的卷积神经网络模型对待测试图片识别的过程与第一实施例中说明的过程相同,在此不再次对此部分的步骤进行说明。

卷积神经网络模型的训练集的获取过程如图2所示,包括:

步骤201,确定待合成的第二异常图片的兼容性异常类型。具体地说,第二异常图片的兼容性异常类型与识别用户界面出现的异常问题相对应,例如,在用户界面上出现以弹窗的形式显示网络连接异常的异常问题对应网络异常的兼容性异常类型;在用户界面出现文字重影的异常问题对应文字重叠的兼容性异常类型;在用户界面出现文字未显示在预设位置的异常问题对应位置偏移的兼容性异常类型,等等。对同一类型的第一异常图片进行合成,有较大概率得到该类型的第二异常图片,所以合成第二异常图片之前,需优先确认第二异常图片的类型,从而可以提高合成第二异常图片的效率。

步骤202,获取至少两个上述兼容性异常类型的第一异常图片。

具体地说,第一异常图片存在多种获取途径,例如,可以由用户上传第一异常图片至云测试平台,上传第一异常图片至云测试平台时,还需对上传的异常图片存在的异常问题进行标注,便于管理员对用户上传的第一异常图片进行分类。在需合成第二异常图片时从云测试平台的数据库中获取用户上传的相应类型的第一异常图片,并对数据库中的第一异常图片进行合成。再比如,还可以将测试过的用户界面中存在异常问题的用户界面作为第一异常图片存储,并对应标注存储的第一异常图片存在的异常问题所属的异常类型。在需合成第二异常图片时,获取存储的相应异常类型的第一异常图片进行合成。

步骤203,将获取的第一异常图片输入预先训练好的深度对抗卷积神经网络模型中,通过深度对抗卷积神经网络模型对输入的第一异常图片进行合成,生成第二异常图片。

具体地说,在获取第一异常图片之后,将获取的所有第一异常图片输入预先训练好的深度对抗卷积神经网络模型,深度对抗卷积神经网络模型包括两个模型,一个是生成模型,一个是判别模型,生成模型用于根据输入的同一异常类型的第一异常图片学习这类异常类型的特征,并根据学习到的特征生成新的第二异常图片,生成的第二异常图片可能存在一定的噪音影响对第二异常图片的识别,若噪音较大则导致生成的第二异常图片中不存在上述类型的异常问题的特征。而判别模型则是对生成的第二异常图片进行区分,通过识别生成的第二异常图片的特征值,判定生成的第二异常图片中是否存在上述类型的异常问题的特征,若判定生成的第二异常图片不存在上述类型异常问题的特征,则通知生成模型进行优化,从而减小生成模型生成第二异常图片中存在的噪音,直至经判别模型判定为正常的生成模型生成的第二异常图片的百分比达到预设的阈值,说明包含上述生成模型和判别模型的深度对抗卷积神经网络模型可以较为准确的合成满足需求的第二异常图片。

步骤204,将第二异常图片的特征与预设特征进行匹配,得到匹配值。

步骤205,若匹配值达到预设阈值,则将第二异常图片添加至卷积神经网络模型的训练集。

具体地说,如果用户界面中存在某一类型的异常问题,该用户界面中存在某一特定的特征,比如,文字重叠问题的用户界面中会存在文字重叠的技术特征,网络异常的用户界面中会存在弹窗技术特征,等等。将第二异常图片的特征与各个类型的异常问题对应的预设特征进行匹配,若匹配度较大,则说明第二异常图片中存在该类异常问题的特征,第二异常图片中存在相应的异常问题,可以作为卷积神经网络模型的训练图片添加至训练集中。这样做可以在深度对抗卷积神经网络模型的精度不高的情况下,对生成的第二异常图片进行验证,避免无效的第二异常图片影响卷积神经网络模型的精度。在深度对抗卷积神经网络模型的精度提高之后,可以省略这一验证的步骤,从而减少第二异常图片的合成时间,提高第二异常图片的合成效率。

另外,为了进一步扩充卷积神经网络模型的训练集中的异常图片的数量,还可以对第一异常图片或上述得到的满足需求的第二异常图片进行处理,如进行图像水平或垂直翻转处理,随机扣取预设尺寸的处理,进行图像的尺寸更改的处理,对图像进行旋转处理等。将处理后的图像中存在异常问题的图像添加至卷积神经网络模型的训练集。为扩充训练集的异常图片的数量还可以通过色彩抖动,或使用主成分分析(fancypca)及监督式数据模型对异常图片进行扩充。

以上述方式获取足够数量的卷积神经网络模型的训练集之后,利用训练集中的异常图片对卷积神经网络模型进行训练,在训练后的卷积神经网络模型的精度达标之后,将训练好的卷积神经网络模型应用线上,并以第一实施例中提到的方式进行用户界面的兼容性异常的判断,提高了兼容性异常问题的识别效率及识别精度。

上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。

本发明第三实施例涉及一种用户界面的兼容性测试装置,如图3所示包括:获取模块31,输入模块32,确定模块33;获取模块31用于获取用户界面作为待测试图片;输入模块32用于将待测试图片输入卷积神经网络模型中;其中,卷积神经网络模型的训练集中至少包括多个第二异常图片,第二异常图片由至少两个第一异常图片合成,且第一异常图片为预先获取的兼容性异常的用户界面;确定模块33用于根据卷积神经网络模型的输出结果,确定用户界面的兼容性是否异常。

不难发现,本实施例为与第一实施例相对应的装置实施例,本实施例可与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。

另外,用户界面的兼容性测试装置还包括:合成模块;合成模块用于确定待合成的第二异常图片的兼容性异常类型;获取至少两个兼容性异常类型的第一异常图片;将获取的第一异常图片输入预先训练好的深度对抗卷积神经网络模型中,通过深度对抗卷积神经网络模型对输入的第一异常图片进行合成,生成第二异常图片。

另外,还包括,匹配模块;匹配模块用于将第二异常图片的特征与预设特征进行匹配,得到匹配值;若匹配值达到预设阈值,则将第二异常图片添加至卷积神经网络模型的训练集。

另外,还包括,预处理模块;预处理模块用于对第二异常图片进行图片预处理,生成第三异常图片;其中,图片预处理至少包括以下任一处理或其组合:翻转处理,尺度变化处理或随机扣取处理;将生成的第三异常图片添加至卷积神经网络模型的训练集。

另外,还包括,记录模块;记录模块用于在用户界面的兼容性异常时,记录用户界面对应的终端型号和操作系统版本。

值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。

本发明第四实施例涉及一种服务器,如图4所示,包括至少一个处理器401;以及,与至少一个处理器401通信连接的存储器402;其中,存储器402存储有可被至少一个处理器401执行的指令,指令被至少一个处理器401执行,以使至少一个处理器401能够执行上述用户界面的兼容性测试方法。

其中,存储器402和处理器401采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器401和存储器402的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器401。

处理器401负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器402可以被用于存储处理器401在执行操作时所使用的数据。

本发明第五实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。

即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

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