掌桥专利:专业的专利平台
掌桥专利
首页

一种兼容性测试方法及装置

文献发布时间:2023-06-19 16:12:48



技术领域

本申请涉及软件测试领域,具体而言,涉及一种兼容性测试方法及装置。

背景技术

目前在现有技术中,在对手机上的应用程序(Application,APP)进行兼容性测试时,一般通过测试人员手动在不同型号的手机或者不同分辨率的手机上手动重复执行该APP中的测试用例(例如:按钮等),以实现对不同型号的手机以及不同分辨率的手机的兼容性测试。但是,采用上述手动测试的方式,成本较大且存在遗漏用例的风险。

发明内容

本申请实施例的目的在于提供一种兼容性测试方法及装置,用以解决现有技术中采用手动进行兼容性测试的方式导致的成本较大以及存在遗漏用例的风险的技术问题。

第一方面,本申请实施例提供一种兼容性测试方法,包括:获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数,以及待检测组件的第一坐标位置;其中,所述第一坐标位置表征所述待检测组件在所述基准设备的屏幕中的位置;根据所述第一屏幕参数、所述第二屏幕参数以及所述第一坐标位置确定所述待检测组件的第二坐标位置;其中,所述第二坐标位置表征所述待检测组件在所述待检测设备的屏幕中的位置;根据所述第二坐标位置模拟在所述待检测设备的屏幕上点击所述待检测组件,以对所述待检测组件在所述待检测设备上的兼容性进行测试。在上述方案中,通过自动获取基准设备与待检测设备中的组件在屏幕中的坐标位置,以及基准设备与待检测设备的屏幕参数,以将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置,从而可以基于转换后的坐标位置在待检测设备中模拟点击该待检测组件。由于本申请实施例提供的兼容性测试方法可以在电子设备中自动执行,因此,实现了对待检测设备的自动化兼容性监测,可以降低检测成本并避免出现遗漏用例的情况。此外,由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

在可选的实施方式中,所述根据所述第一屏幕参数、所述第二屏幕参数以及所述第一坐标位置确定所述待检测组件的第二坐标位置,包括:根据所述第一屏幕参数以及所述第一坐标位置确定标准坐标位置;根据标准坐标位置以及所述第二屏幕参数确定所述第二坐标位置。在上述方案中,基于基准设备的第一屏幕参数以及待检测组件在基准设备的屏幕上的第一坐标位置,可以得到标准坐标位置;然后基于上述标准坐标位置以及待检测设备的第二屏幕参数,可以得到待检测组件在待检测设备的屏幕上的第二坐标位置,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

在可选的实施方式中,所述根据所述第一屏幕参数、所述第二屏幕参数以及所述第一坐标位置确定所述待检测组件的第二坐标位置,包括:根据所述第一屏幕参数以及所述第二屏幕参数得到标准比例;根据所述标准比例以及所述第一坐标位置确定所述第二坐标位置。在上述方案中,基于基准设备的第一屏幕参数以及待检测设备的第二屏幕参数,可以得到标准比例;然后基于上述标准比例以及待检测组件在基准设备的屏幕上的第一坐标位置,可以得到待检测组件在待检测设备的屏幕上的第二坐标位置,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

在可选的实施方式中,在所述获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数,以及待检测组件的第一坐标位置之前,所述方法还包括:将所述第一屏幕参数与所述基准设备的第一身份标识以键值对的形式进行存储,以及,将所述第二屏幕参数与所述待检测设备的第二身份标识以键值对的形式进行存储。在上述方案中,在对待检测设备进行兼容性测试之前,可以将基准设备的第一屏幕参数与其第一身份标识,以及待检测设备的第二屏幕参数与其第二身份标识,通过键值对的形式进行存储,以便于查找设备对应的屏幕参数,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。

在可选的实施方式中,所述获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数,包括:获取所述第一身份标识以及所述第二身份标识;根据所述第一身份标识与所述基准设备对应的键值对确定所述第一屏幕参数,以及,根据所述第二身份标识与所述待检测设备对应的键值对确定所述第二屏幕参数。在上述方案中,由于将基准设备的第一屏幕参数与其第一身份标识,以及待检测设备的第二屏幕参数与其第二身份标识,通过键值对的形式进行了存储,因此可以方便快捷的查找到设备对应的屏幕参数,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。

在可选的实施方式中,执行所述兼容性测试方法的线程数量由所述待检测设备的数量确定。在上述方案中,可以通过开启多个线程实现对多个待检测设备的并行测试,以在实现自动化兼容性测试的基础上,进一步提高自动化兼容性测试的效率。

第二方面,本申请实施例提供一种兼容性测试装置,包括:获取模块,用于获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数,以及待检测组件的第一坐标位置;其中,所述第一坐标位置表征所述待检测组件在所述基准设备的屏幕中的位置;确定模块,用于根据所述第一屏幕参数、所述第二屏幕参数以及所述第一坐标位置确定所述待检测组件的第二坐标位置;其中,所述第二坐标位置表征所述待检测组件在所述待检测设备的屏幕中的位置;点击模块,用于根据所述第二坐标位置模拟在所述待检测设备的屏幕上点击所述待检测组件,以对所述待检测组件在所述待检测设备上的兼容性进行测试。在上述方案中,通过自动获取基准设备与待检测设备中的组件在屏幕中的坐标位置,以及基准设备与待检测设备的屏幕参数,以将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置,从而可以基于转换后的坐标位置在待检测设备中模拟点击该待检测组件。由于本申请实施例提供的兼容性测试方法可以在电子设备中自动执行,因此,实现了对待检测设备的自动化兼容性监测,可以降低检测成本并避免出现遗漏用例的情况。此外,由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

在可选的实施方式中,所述确定模块具体用于:根据所述第一屏幕参数以及所述第一坐标位置确定标准坐标位置;根据标准坐标位置以及所述第二屏幕参数确定所述第二坐标位置。在上述方案中,基于基准设备的第一屏幕参数以及待检测组件在基准设备的屏幕上的第一坐标位置,可以得到标准坐标位置;然后基于上述标准坐标位置以及待检测设备的第二屏幕参数,可以得到待检测组件在待检测设备的屏幕上的第二坐标位置,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

在可选的实施方式中,所述确定模块具体用于:根据所述第一屏幕参数以及所述第二屏幕参数得到标准比例;根据所述标准比例以及所述第一坐标位置确定所述第二坐标位置。在上述方案中,基于基准设备的第一屏幕参数以及待检测设备的第二屏幕参数,可以得到标准比例;然后基于上述标准比例以及待检测组件在基准设备的屏幕上的第一坐标位置,可以得到待检测组件在待检测设备的屏幕上的第二坐标位置,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

在可选的实施方式中,所述兼容性测试装置还包括:存储模块,用于将所述第一屏幕参数与所述基准设备的第一身份标识以键值对的形式进行存储,以及,将所述第二屏幕参数与所述待检测设备的第二身份标识以键值对的形式进行存储。在上述方案中,在对待检测设备进行兼容性测试之前,可以将基准设备的第一屏幕参数与其第一身份标识,以及待检测设备的第二屏幕参数与其第二身份标识,通过键值对的形式进行存储,以便于查找设备对应的屏幕参数,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。

在可选的实施方式中,所述获取模块具体用于:获取所述第一身份标识以及所述第二身份标识;根据所述第一身份标识与所述基准设备对应的键值对确定所述第一屏幕参数,以及,根据所述第二身份标识与所述待检测设备对应的键值对确定所述第二屏幕参数。在上述方案中,由于将基准设备的第一屏幕参数与其第一身份标识,以及待检测设备的第二屏幕参数与其第二身份标识,通过键值对的形式进行了存储,因此可以方便快捷的查找到设备对应的屏幕参数,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。

在可选的实施方式中,执行所述兼容性测试方法的线程数量由所述待检测设备的数量确定。在上述方案中,可以通过开启多个线程实现对多个待检测设备的并行测试,以在实现自动化兼容性测试的基础上,进一步提高自动化兼容性测试的效率。

第三方面,本申请实施例提供一种计算机程序产品,包括计算机程序指令,所述计算机程序指令被处理器读取并运行时,执行如第一方面所述的兼容性测试方法。

第四方面,本申请实施例提供一种电子设备,包括:处理器、存储器和总线;所述处理器和所述存储器通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的计算机程序指令,所述处理器调用所述计算机程序指令能够执行如第一方面所述的兼容性测试方法。

第五方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序指令,所述计算机程序指令被计算机运行时,使所述计算机执行如第一方面所述的兼容性测试方法。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举本申请实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种兼容性测试方法的流程图;

图2为本申请实施例提供的一种兼容性测试装置的结构框图;

图3为本申请实施例提供的一种电子设备的结构框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

请参照图1,图1为本申请实施例提供的一种兼容性测试方法的流程图,该兼容性测试方法可以包括如下内容:

步骤S101:获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数,以及待检测组件的第一坐标位置。

步骤S102:根据第一屏幕参数、第二屏幕参数以及第一坐标位置确定待检测组件的第二坐标位置。

步骤S103:根据第二坐标位置模拟在待检测设备的屏幕上点击待检测组件,以对待检测组件在待检测设备上的兼容性进行测试。

具体的,待检测设备是指需要对APP中的组件进行兼容性测试的设备。其中,不同的待检测设备可以为不同型号的设备,或者为不同分辨率的设备等,本申请实施例对此不作具体的限定。

作为一种实施方式,需要进行兼容性测试的组件由测试人员根据业务场景实现确定,例如:对APP中某一个页面中的所有组件进行兼容性测试;或者,对APP中所有表征“开始”的组件进行兼容性测试等。作为另一种实施方式,需要进行兼容性测试的组件由电子设备随机确定。本申请实施例对此不作具体的限定,本领域技术人员可以根据实际情况进行合适的调整。

基准设备是指在本申请实施例提供的兼容性测试方法中,作为初始标准的设备。

作为一种实施方式,基准设备可以为多个待检测设备中的任意一个设备;作为另一种实施方式,基准设备可以不是待检测设备。可以理解的是,无论采用上述哪种实施方式,基准设备以及待检测设备均为同一个种类的设备,例如:基准设备以及待检测设备均为手机、智能手表等。

其中,当基准设备为多个待检测设备中的任意一个设备时,基准设备也需要进行兼容性测试。此时,测试人员或者电子设备可以随机从多个待检测设备确定一个待检测设备作为基准设备;或者,测试人员或者电子设备也可以根据待检测设备的设备参数确定一个待检测设备作为基准设备,例如:将待检测设备中屏幕尺寸最小的设备作为基准设备;或者,将待检测设备中屏幕密度最大的设备作为基准设备等,本申请实施例对此同样不作具体的限定。

基准设备以及待检测设备的屏幕参数有多种实现方式,例如:屏幕参数可以为屏幕密度、屏幕分辨率、屏幕尺寸等,本领域技术人员可以根据实际情况进行合适的选择。

待检测组件在基准设备以及待检测设备中的坐标位置同样有多种实现方式,例如:待检测组件在相同的坐标系下,位于基准设备以及待检测设备中的坐标;或者,待检测组件的像素点在基准设备以及待检测设备的屏幕像素点中所处的位置等,本领域技术人员同样可以根据实际情况进行合适的选择。

可以理解的是,在执行本申请实施例提供的兼容性测试方法时,待检测设备以及待检测组件的数量一般均为多个,为了便于叙述,在后续实施例中,均以一个待检测设备以及一个待检测组件为例进行说明。

在上述步骤S101中,电子设备获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数以及待检测组件的第一坐标位置的方式有多种。举例来说,电子设备可以接收外部设备发送的第一屏幕参数、第二屏幕参数、第一坐标位置;或者,电子设备可以从本地或者云端读取预先存储的第一屏幕参数、第二屏幕参数、第一坐标位置;或者,电子设备可以实时采集基准设备的第一屏幕参数、待检测设备的第二屏幕参数和第一坐标位置等。

需要说明的是,电子设备获取上述三个参数的方式可以是相同的,也可以是不同的,本领域技术人员可以根据实际情况进行合适的选择。

以基准设备以及待检测设备均为安卓(Android)手机为例,基准设备以及待检测设备可以通过有线(例如:通用串行总线(Universal Serial Bus,USB)等)或者无线(例如:蓝牙等)的方式与电子设备通信连接。针对第一坐标位置,电子设备可以通过Android的UIAUTO MATOR工具采集到待检测组件在基准设备的屏幕上的第一坐标位置;针对第一屏幕参数以及第二屏幕参数,电子设备可以通过Android的get Display Metrics工具采集到基准设备的第一屏幕参数以及待检测设备的第二屏幕参数。

在上述步骤S102中,电子设备可以基于步骤S101中获取到的第一屏幕参数、第二屏幕参数以及第一坐标位置这三个参数,将待检测组件在基准设备中的坐标位置(即第一坐标位置)转换为其在待检测设备中的坐标位置(即第二坐标位置)。

其中,转换待检测组件的坐标位置的实施方式有多种,例如:基于第一屏幕参数与第二屏幕参数之间的关系对第一坐标位置进行转换;或者,根据第一屏幕参数与第一坐标位置之间的关系对第一坐标位置进行转换等,其具体实施方式将在后续实施例中进行详细的说明,此处暂不作详细的介绍。

在上述步骤S103中,基于步骤S102中得到的待检测组件在待检测设备中的第二坐标位置,电子设备可以通过模拟在待检测设备的屏幕上点击第二坐标位置,实现模拟在待检测设备的屏幕上点击待检测组件。进一步的,通过对点击待检测组件的数据进行分析,可以得到该待检测组件在该待检测设备上的兼容性,从而实现了对待检测设备的自动化兼容性测试。

以基准设备以及待检测设备均为Android手机为例,待检测设备可以通过安卓调试桥(Android Debug Bridge,ADB)命令链接到电子设备;然后,通过ADB命令中“adb inputtap X2,Y2”命令模拟用户点击。

可以理解的是,由于在待检测组件的坐标位置的转换过程中,是基于基准设备的第一屏幕参数以及待检测设备的第二屏幕参数进行的转换,因此转换得到的第二坐标位置位于待检测设备的屏幕中。

假设该待测试组件由于设备型号或者分辨率的不同,导致其并没有显示在待检测设备上的屏幕上,电子设备模拟点击第二坐标位置仍然能够点击到待检测设备屏幕上的某一点,而不会出现点击到待检测设备屏幕外的某一点;因此,也就不会出现模拟点击到待检测设备屏幕外一点导致的兼容性测试程序崩溃的问题。

需要说明的是,对于多个待检测组件的情况,可以通过循环执行上述步骤S103,直至遍历完成所有的待检测组件的兼容性测试,这样,就完成了一个待检测设备上多个待检测组件的兼容性测试。

类似的,对于多个待检测设备的情况,可以通过循环执行上述步骤S101-步骤S103,直至遍历完成所有待检测设备中的所有待检测组件的兼容性测试,这样,就完成了多个待检测设备上多个待检测组件的兼容性测试。

可以理解的是,在上述遍历的过程中,针对同一个待检测设备,步骤S101中获取基准设备的第一屏幕参数以及待检测设备的第二屏幕参数的步骤可以仅执行一次;针对同一个待检测组件,步骤S101中获取基准设备的第一屏幕参数以及待检测组件的第一坐标位置的步骤可以仅执行一次。

在上述方案中,通过自动获取基准设备与待检测设备中的组件在屏幕中的坐标位置,以及基准设备与待检测设备的屏幕参数,以将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置,从而可以基于转换后的坐标位置在待检测设备中模拟点击该待检测组件。由于本申请实施例提供的兼容性测试方法可以在电子设备中自动执行,因此,实现了对待检测设备的自动化兼容性监测,可以降低检测成本并避免出现遗漏用例的情况。此外,由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

进一步的,下面举例介绍两种待检测组件的坐标位置转换的实施方式。

在第一种实施方式中,上述步骤S101可以包括如下内容:

步骤1),根据第一屏幕参数以及第一坐标位置确定标准坐标位置。

步骤2),根据标准坐标位置以及第二屏幕参数确定第二坐标位置。

具体的,在上述步骤1)中,可以根据如下公式根据第一屏幕参数S

(x′,y′)=(x

在上述步骤2)中,可以根据如下公式根据标准位置坐标(x′,y′)以及第二屏幕参数S

(x

在上述方案中,基于基准设备的第一屏幕参数以及待检测组件在基准设备的屏幕上的第一坐标位置,可以得到标准坐标位置;然后基于上述标准坐标位置以及待检测设备的第二屏幕参数,可以得到待检测组件在待检测设备的屏幕上的第二坐标位置,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

在第二种实施方式中,上述步骤S101可以包括如下内容:

步骤1),根据第一屏幕参数以及第二屏幕参数得到标准比例。

步骤2),根据标准比例以及第一坐标位置确定第二坐标位置。

具体的,在上述步骤1)中,可以根据如下公式根据第一屏幕参数S

S′=S

在上述步骤2)中,可以根据如下公式根据标准比例S′以及第一坐标位置(x

(x

在上述方案中,基于基准设备的第一屏幕参数以及待检测设备的第二屏幕参数,可以得到标准比例;然后基于上述标准比例以及待检测组件在基准设备的屏幕上的第一坐标位置,可以得到待检测组件在待检测设备的屏幕上的第二坐标位置,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

进一步的,下面对屏幕参数以及坐标位置的存储方式进行详细的介绍。

首先,介绍屏幕参数的存储方式。在本申请实施例中,屏幕参数可以有多种存储方式,例如:可以通过图表的方式对屏幕参数进行存储;或者,可以通过键值对(屏幕参数-待检测设备的身份标识)的方式对屏幕参数进行存储等。

以通过键值对的方式对屏幕参数进行存储为例,在上述步骤S101之前,本申请实施例提供的兼容性测试方法还可以包括如下内容:

将第一屏幕参数与基准设备的第一身份标识以键值对的形式进行存储,以及,将第二屏幕参数与待检测设备的第二身份标识以键值对的形式进行存储。

相应的,上述步骤S101具体可以包括如下内容:

步骤1),获取第一身份标识以及第二身份标识。

步骤2),根据第一身份标识与基准设备对应的键值对确定第一屏幕参数,以及,根据第二身份标识与待检测设备对应的键值对确定第二屏幕参数。

具体的,电子设备在采集到基准设备的第一屏幕参数以及待检测设备的第二屏幕参数之后,可以以键值对的方式将上述第一屏幕参数以及第二屏幕参数存储在配置文件中。其中,键值对中的键可以为设备的身份标识,而键值对中的值可以为设备的屏幕参数。

当电子设备需要获取设备的屏幕参数时,可以读取上述配置文件,并基于设备的身份标识查找到与该身份标识对应的屏幕参数。

以基准设备以及待检测设备均为Android手机为例,待检测设备可以通过安卓调试桥(Android Debug Bridge,ADB)命令链接到电子设备;然后,待检测设备可以通过ADB命令将自身的身份标识发送给电子设备,以使电子设备可以基于上述身份标识确定对应的屏幕参数。

在上述方案中,在对待检测设备进行兼容性测试之前,可以将基准设备的第一屏幕参数与其第一身份标识,以及待检测设备的第二屏幕参数与其第二身份标识,通过键值对的形式进行存储,以便于查找设备对应的屏幕参数,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。

接下来,介绍坐标位置的存储方式。

针对基准设备的第一坐标位置,可以将多个待检测组件的第一坐标位置保存在一个Excel中;针对转换后的第二坐标位置,可以将多个待检测组件的第二坐标位置保存在另一个Excel中。作为一种实施方式,保存有第一坐标位置的Excel可以存储在云端服务器上,而保存有第二坐标位置的Excel可以存储在本地中。

进一步的,当同时需要对多个待检测设备进行兼容性测试时,可以采用多线程的方式执行本申请实施例提供的兼容性测试方法,且执行所述兼容性测试方法的线程数量由所述待检测设备的数量确定。

在上述方案中,可以通过开启多个线程实现对多个待检测设备的并行测试,以在实现自动化兼容性测试的基础上,进一步提高自动化兼容性测试的效率。

请参照图2,图2为本申请实施例提供的一种兼容性测试装置的结构框图,该兼容性测试装置200可以包括:获取模块201,用于获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数,以及待检测组件的第一坐标位置;其中,所述第一坐标位置表征所述待检测组件在所述基准设备的屏幕中的位置;确定模块202,用于根据所述第一屏幕参数、所述第二屏幕参数以及所述第一坐标位置确定所述待检测组件的第二坐标位置;其中,所述第二坐标位置表征所述待检测组件在所述待检测设备的屏幕中的位置;点击模块203,用于根据所述第二坐标位置模拟在所述待检测设备的屏幕上点击所述待检测组件,以对所述待检测组件在所述待检测设备上的兼容性进行测试。

在本申请实施例中,通过自动获取基准设备与待检测设备中的组件在屏幕中的坐标位置,以及基准设备与待检测设备的屏幕参数,以将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置,从而可以基于转换后的坐标位置在待检测设备中模拟点击该待检测组件。由于本申请实施例提供的兼容性测试方法可以在电子设备中自动执行,因此,实现了对待检测设备的自动化兼容性监测,可以降低检测成本并避免出现遗漏用例的情况。此外,由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

进一步的,所述确定模块202具体用于:根据所述第一屏幕参数以及所述第一坐标位置确定标准坐标位置;根据标准坐标位置以及所述第二屏幕参数确定所述第二坐标位置。

在本申请实施例中,基于基准设备的第一屏幕参数以及待检测组件在基准设备的屏幕上的第一坐标位置,可以得到标准坐标位置;然后基于上述标准坐标位置以及待检测设备的第二屏幕参数,可以得到待检测组件在待检测设备的屏幕上的第二坐标位置,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

进一步的,所述确定模块具体202用于:根据所述第一屏幕参数以及所述第二屏幕参数得到标准比例;根据所述标准比例以及所述第一坐标位置确定所述第二坐标位置。

在本申请实施例中,基于基准设备的第一屏幕参数以及待检测设备的第二屏幕参数,可以得到标准比例;然后基于上述标准比例以及待检测组件在基准设备的屏幕上的第一坐标位置,可以得到待检测组件在待检测设备的屏幕上的第二坐标位置,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。由于转换得到的待检测组件的坐标位置一定位于待检测设备的屏幕中,因此不会出现待检测组件未显示在手机屏幕上时基于其身份标识点击该待检测组件导致的程序崩溃的问题。

进一步的,所述兼容性测试装置200还包括:存储模块,用于将所述第一屏幕参数与所述基准设备的第一身份标识以键值对的形式进行存储,以及,将所述第二屏幕参数与所述待检测设备的第二身份标识以键值对的形式进行存储。

在本申请实施例中,在对待检测设备进行兼容性测试之前,可以将基准设备的第一屏幕参数与其第一身份标识,以及待检测设备的第二屏幕参数与其第二身份标识,通过键值对的形式进行存储,以便于查找设备对应的屏幕参数,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。

进一步的,所述获取模块201具体用于:获取所述第一身份标识以及所述第二身份标识;根据所述第一身份标识与所述基准设备对应的键值对确定所述第一屏幕参数,以及,根据所述第二身份标识与所述待检测设备对应的键值对确定所述第二屏幕参数。

在本申请实施例中,由于将基准设备的第一屏幕参数与其第一身份标识,以及待检测设备的第二屏幕参数与其第二身份标识,通过键值对的形式进行了存储,因此可以方便快捷的查找到设备对应的屏幕参数,从而实现将待检测组件在基准设备中的坐标位置转换为其在待检测设备中的坐标位置。

进一步的,执行所述兼容性测试方法的线程数量由所述待检测设备的数量确定。

在本申请实施例中,可以通过开启多个线程实现对多个待检测设备的并行测试,以在实现自动化兼容性测试的基础上,进一步提高自动化兼容性测试的效率。

请参照图3,图3为本申请实施例提供的一种电子设备的结构框图,该电子设备300包括:至少一个处理器301,至少一个通信接口302,至少一个存储器303和至少一个通信总线304。其中,通信总线304用于实现这些组件直接的连接通信,通信接口302用于与其他节点设备进行信令或数据的通信,存储器303存储有处理器301可执行的机器可读指令。当电子设备300运行时,处理器301与存储器303之间通过通信总线3404通信,机器可读指令被处理器301调用时执行上述兼容性测试方法。

例如,本申请实施例的处理器301通过通信总线304从存储器303读取计算机程序并执行该计算机程序可以实现如下方法:步骤S101:获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数,以及待检测组件的第一坐标位置。步骤S102:根据第一屏幕参数、第二屏幕参数以及第一坐标位置确定待检测组件的第二坐标位置。步骤S103:根据第二坐标位置模拟在待检测设备的屏幕上点击待检测组件,以对待检测组件在待检测设备上的兼容性进行测试。

其中,处理器301包括一个或多个,其可以是一种集成电路芯片,具有信号的处理能力。上述的处理器301可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、微控制单元(Micro Controller Unit,简称MCU)、网络处理器(NetworkProcessor,简称NP)或者其他常规处理器;还可以是专用处理器,包括神经网络处理器(Neural-network Processing Unit,简称NPU)、图形处理器(Graphics Processing Unit,简称GPU)、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuits,简称ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。并且,在处理器301为多个时,其中的一部分可以是通用处理器,另一部分可以是专用处理器。

存储器303包括一个或多个,其可以是,但不限于,随机存取存储器(RandomAccess Memory,简称RAM),只读存储器(Read Only Memory,简称ROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),可擦除可编程只读存储器(ErasableProgrammable Read-Only Memory,简称EPROM),电可擦除可编程只读存储器(ElectricErasable Programmable Read-Only Memory,简称EEPROM)等。

可以理解,图3所示的结构仅为示意,电子设备300还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。于本申请实施例中,电子设备300可以是,但不限于台式机、笔记本电脑、智能手机、智能穿戴设备、车载设备等实体设备,还可以是虚拟机、服务器等虚拟设备。另外,电子设备300也不一定是单台设备,还可以是多台设备的组合,例如服务器集群,等等。

本申请实施例还提供一种计算机程序产品,包括存储在计算机可读存储介质上的计算机程序,计算机程序包括计算机程序指令,当计算机程序指令被计算机执行时,计算机能够执行上述实施例中兼容性测试方法的步骤,例如包括:获取基准设备的第一屏幕参数、待检测设备的第二屏幕参数,以及待检测组件的第一坐标位置;其中,所述第一坐标位置表征所述待检测组件在所述基准设备的屏幕中的位置;根据所述第一屏幕参数、所述第二屏幕参数以及所述第一坐标位置确定所述待检测组件的第二坐标位置;其中,所述第二坐标位置表征所述待检测组件在所述待检测设备的屏幕中的位置;根据所述第二坐标位置模拟在所述待检测设备的屏幕上点击所述待检测组件,以对所述待检测组件在所述待检测设备上的兼容性进行测试。

在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 兼容性测试装置、兼容性测试方法及系统
  • 一种基于调试桥的自动化界面兼容性测试方法及装置
技术分类

06120114744748