CN112612690A - 一种用户界面信息处理方法、装置、电子设备及存储介质 - Google Patents
一种用户界面信息处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112612690A CN112612690A CN202011378633.8A CN202011378633A CN112612690A CN 112612690 A CN112612690 A CN 112612690A CN 202011378633 A CN202011378633 A CN 202011378633A CN 112612690 A CN112612690 A CN 112612690A
- Authority
- CN
- China
- Prior art keywords
- information
- user interface
- page
- frame
- target
- 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.)
- Granted
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 21
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000012360 testing method Methods 0.000 claims abstract description 114
- 238000000034 method Methods 0.000 claims abstract description 62
- 238000012545 processing Methods 0.000 claims description 44
- 238000007781 pre-processing Methods 0.000 claims description 22
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 238000007711 solidification Methods 0.000 description 4
- 230000008023 solidification Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 229940048662 kwai Drugs 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000013100 final test Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- 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/368—Test management for test version control, e.g. updating test cases to a new software version
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
-
- 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/3676—Test management for coverage analysis
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开关于一种用户界面信息处理方法、装置、电子设备及存储介质,该方法包括:启动对目标终端的显示界面的录屏操作;生成与所述目标应用程序对应的自动操作指令;将所述自动操作指令发送给所述目标终端,以使得所述目标终端:基于所述自动操作指令分别对所述对照版本的用户界面以及所述测试版本的用户界面进行自动触发操作;分别确定包含对对照版本、测试版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第一录屏信息以及第二录屏信息;基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息。本公开能够提高用户界面测试的覆盖率、效率以及便利性。
Description
技术领域
本公开涉及软件测试技术领域,尤其涉及一种用户界面信息处理方法、装置、电子设备及存储介质。
背景技术
随着移动互联网的发展,APP(Application,应用程序)可实现的功能越来越复杂,从而APP的用户界面展现以及交互方式越来越多样,这给测试人员在发版前对APP进行测试回归带来了极大的挑战,为了覆盖到APP不同功能下的样式展现及交互方式,一般通过自动化的方式进行UI测试(User Interface Testing,用户界面测试)。
相关技术中,一种常用的自动化UI测试方法是通过判断APP界面中是否存在预期的元素,对于不同可见视图中的元素判断通过模拟人为的操作使元素展现出来,如点击跳转元素、页面上下滑动、左右侧滑、轮播图波动等,该方法一般需要通过复杂的代码实现,APP界面中偏僻的、尺寸较小的元素容易被忽略,并且对于有些元素的测试无法通过代码实现;另一种常用的自动化UI测试方法对线上包和测试包的同一个界面进行截图,将两个截图进行比对,通过判断两张图片是否存在不同点以实现对用户界面的测试,该方法需要等到页面加载完成之后才进行截图,并没有覆盖到加载过程中的用户界面信息,从而不能完全覆盖APP运行的流程。因此需要提出一种高效的、覆盖率高的用户界面信息处理方法。
发明内容
本公开提供一种用户界面信息处理方法、装置、电子设备及存储介质,以至少解决相关技术中对用户界面进行测试时需要通过复杂的代码进行实现、测试流程覆盖不全面的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种用户界面信息处理方法,包括:
启动对目标终端的显示界面的录屏操作;所述目标终端中安装有目标应用程序的对照版本和测试版本;
生成与所述目标应用程序对应的自动操作指令,所述自动操作指令用于对所述目标应用程序的用户界面进行自动触发操作;
将所述自动操作指令发送给所述目标终端,以使得所述目标终端:基于所述自动操作指令分别对所述对照版本的用户界面以及所述测试版本的用户界面进行自动触发操作,生成业务数据请求;接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示;
确定包含对所述对照版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第一录屏信息,确定包含对所述测试版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第二录屏信息;
基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述生成与所述目标应用程序对应的自动操作指令包括:
对所述目标应用程序涉及的用户界面进行分析,确定所述用户界面中包含的多项操作项,以及每项操作项对应的操作类型;
基于每项操作项以及每项操作项对应的操作类型,生成与每项操作项对应的操作指令;
按照预设执行顺序对各项操作项对应的操作指令进行排序,生成与所述目标应用程序对应的自动操作指令。
在一示例性实施例中,所述将所述自动操作指令发送给所述目标终端,以使得所述目标终端:接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示包括:
将所述自动操作指令发送给所述目标终端,以使得所述目标终端:
将所述业务数据请求发送给代理服务器,所述业务数据请求中包括业务请求数据标识,以使得所述代理服务器:判断所述业务请求数据标识是否存在于预设白名单中;当所述业务请求数据标识存在于所述预设白名单且数据库中存在与所述业务请求数据标识对应的业务数据时,将所述业务数据发送给所述目标终端;当所述业务请求数据标识存在于所述预设白名单且所述数据库中不存在与所述业务请求数据标识对应的业务数据时,从所述目标应用程序对应的后台业务服务器获取与所述业务请求数据标识对应的后台数据,对所述后台数据进行固化处理,将固化处理后的后台数据存储到所述数据库中,并将所述固化处理后的后台数据作为所述业务数据发送给所述目标终端;
对所述业务数据进行展示;
其中,当对所述对照版本的用户界面和所述测试版本的用户界面中相同的操作项分别进行操作时,生成相同的业务数据请求。
在一示例性实施例中,所述基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息包括:
对所述第一录屏信息以及所述第二录屏信息分别进行拆帧处理,生成第一帧序列和第二帧序列;
当所述第一帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第一帧序列;当所述第二帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第二帧序列;
基于所述预处理之后的第一帧序列以及所述预处理之后的第二帧序列,生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述方法还包括:
预先确定所述目标应用程序中与各标签分别对应的页面,分别提取出各页面的标记信息,确定各页面的标记信息的属性信息;
基于各页面的标记信息以及各页面的标记信息的属性信息,生成页面标记信息集合;
所述基于所述预处理之后的第一帧序列以及所述预处理之后的第二帧序列,生成所述对照版本和所述测试版本的用户界面差异信息包括:
计算所述预处理之后的第一帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第一帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第一目标页面,以及所述第一目标页面的标记信息;
计算所述预处理之后的第二帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第二帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息;
将包含有相同标记信息的所述第一目标页面与所述第二目标页面的帧图片进行比对,得到所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述标记信息的属性信息为与预设终端的分辨率对应的标记信息的属性信息;
所述将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息包括:
获取所述目标终端的分辨率;
当所述目标终端的分辨率与所述预设终端的分辨率不同时,将与所述预设终端的分辨率对应的标记信息的属性信息转换为与所述目标终端的分辨率对应的标记信息的属性信息;
基于所述页面标记信息集合中各页面的标记信息,以及相应的与所述目标终端的分辨率对应的标记信息的属性信息,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息。
在一示例性实施例中,所述将包含有相同标记信息的所述第一目标页面与所述第二目标页面的帧图片进行比对,得到所述对照版本和所述测试版本的用户界面差异信息包括:
遍历所述第一目标页面对应的帧图片的各个像素点;
将所述第一目标页面对应的帧图片的每个像素点值与所述第二目标页面对应的帧图片中相应的像素点值进行比较;
分别在所述第一目标页面对应的帧图片以及在所述第二目标页面对应的帧图片中对像素点值不同的像素点进行标记;
基于标记的不同像素点生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述启动对目标终端的显示界面的录屏操作包括:
获取所述目标终端的界面显示信息,对所述目标终端的界面显示信息进行显示;
对显示的所述目标终端的界面显示信息进行录屏。
根据本公开实施例的第二方面,提供一种用户界面信息处理装置,包括:
录屏操作启动单元,被配置为执行启动对目标终端的显示界面的录屏操作;所述目标终端中安装有目标应用程序的对照版本和测试版本;
自动操作指令生成单元,被配置为执行生成与所述目标应用程序对应的自动操作指令,所述自动操作指令用于对所述目标应用程序的用户界面进行自动触发操作;
自动操作指令发送单元,被配置为执行将所述自动操作指令发送给所述目标终端,以使得所述目标终端:基于所述自动操作指令分别对所述对照版本的用户界面以及所述测试版本的用户界面进行自动触发操作,生成业务数据请求;接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示;
录屏信息确定单元,被配置为执行确定包含对所述对照版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第一录屏信息,确定包含对所述测试版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第二录屏信息;
差异信息生成单元,被配置为执行基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述自动操作指令生成单元包括:
操作项确定单元,被配置为执行对所述目标应用程序涉及的用户界面进行分析,确定所述用户界面中包含的多项操作项,以及每项操作项对应的操作类型;
第一生成单元,被配置为执行基于每项操作项以及每项操作项对应的操作类型,生成与每项操作项对应的操作指令;
第二生成单元,被配置为执行按照预设执行顺序对各项操作项对应的操作指令进行排序,生成与所述目标应用程序对应的自动操作指令。
在一示例性实施例中,所述自动操作指令发送单元包括:
第一发送单元,被配置为执行将所述自动操作指令发送给所述目标终端,以使得所述目标终端:
将所述业务数据请求发送给代理服务器,所述业务数据请求中包括业务请求数据标识,以使得所述代理服务器:判断所述业务请求数据标识是否存在于预设白名单中;当所述业务请求数据标识存在于所述预设白名单且数据库中存在与所述业务请求数据标识对应的业务数据时,将所述业务数据发送给所述目标终端;当所述业务请求数据标识存在于所述预设白名单且所述数据库中不存在与所述业务请求数据标识对应的业务数据时,从所述目标应用程序对应的后台业务服务器获取与所述业务请求数据标识对应的后台数据,对所述后台数据进行固化处理,将固化处理后的后台数据存储到所述数据库中,并将所述固化处理后的后台数据作为所述业务数据发送给所述目标终端;对所述业务数据进行展示;
其中,当对所述对照版本的用户界面和所述测试版本的用户界面中相同的操作项分别进行操作时,生成相同的业务数据请求。
在一示例性实施例中,所述差异信息生成单元包括:
拆帧处理单元,被配置为执行对所述第一录屏信息以及所述第二录屏信息分别进行拆帧处理,生成第一帧序列和第二帧序列;
重复帧处理单元,被配置为执行当所述第一帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第一帧序列;当所述第二帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第二帧序列;
第三生成单元,被配置为执行基于所述预处理之后的第一帧序列以及所述预处理之后的第二帧序列,生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述装置还包括:
标记信息预处理单元,被配置为执行预先确定所述目标应用程序中与各标签分别对应的页面,分别提取出各页面的标记信息,确定各页面的标记信息的属性信息;
页面标记信息集合生成单元,被配置为执行基于各页面的标记信息以及各页面的标记信息的属性信息,生成页面标记信息集合;
所述第三生成单元包括:
第一计算单元,被配置为执行计算所述预处理之后的第一帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第一帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第一目标页面,以及所述第一目标页面的标记信息;
第二计算单元,被配置为执行计算所述预处理之后的第二帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第二帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息;
帧图片比对单元,被配置为执行将包含有相同标记信息的所述第一目标页面与所述第二目标页面的帧图片进行比对,得到所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述标记信息的属性信息为与预设终端的分辨率对应的标记信息的属性信息;
所述第二计算单元包括:
分辨率获取单元,被配置为执行获取所述目标终端的分辨率;
分辨率转换单元,被配置为执行当所述目标终端的分辨率与所述预设终端的分辨率不同时,将与所述预设终端的分辨率对应的标记信息的属性信息转换为与所述目标终端的分辨率对应的标记信息的属性信息;
第一确定单元,被配置为执行基于所述页面标记信息集合中各页面的标记信息,以及相应的与所述目标终端的分辨率对应的标记信息的属性信息,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息。
在一示例性实施例中,所述帧图片比对单元包括:
像素点遍历单元,被配置为执行遍历所述第一目标页面对应的帧图片的各个像素点;
像素点值比较单元,被配置为执行将所述第一目标页面对应的帧图片的每个像素点值与所述第二目标页面对应的帧图片中相应的像素点值进行比较;
像素点标记单元,被配置为执行分别在所述第一目标页面对应的帧图片以及在所述第二目标页面对应的帧图片中对像素点值不同的像素点进行标记;
第四生成单元,被配置为执行基于标记的不同像素点生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述录屏操作启动单元包括:
界面显示信息获取单元,被配置为执行获取所述目标终端的界面显示信息,对所述目标终端的界面显示信息进行显示;
录屏单元,被配置为执行对显示的所述目标终端的界面显示信息进行录屏。
根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上所述的用户界面信息处理方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如上所述的用户界面信息处理方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,计算机设备的至少一个处理器从所述可读存储介质读取并执行所述计算机程序,使得设备执行上述的用户界面信息处理方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
本公开通过启动对目标终端的显示界面的录屏操作,将与目标应用程序对应的自动操作指令发送给目标终端,以使得目标终端:基于自动操作指令分别对应用程序的对照版本和测试版本进行自动触发操作,生成业务数据请求,以及接收基于业务数据请求返回的业务数据,对业务数据进行展示;通过向目标终端发送自动操作指令,从而使得目标终端对对照版本和测试版本的用户界面分别进行自动触发操作;从录屏信息中确定出与操作对照版本的用户界面相关的录屏信息为第一录屏信息,与操作测试版本的用户界面相关的录屏信息为第二录屏信息,根据第一录屏信息和第二录屏信息生成对照版本和测试版本的用户界面差异信息;通过对操作用户界面的过程进行录屏,只要是用户能够看到的UI显示均能够被覆盖到,从而解决了通过对用户界面进行截图比对存在的覆盖流程不全的问题,提高了测试覆盖率;另外,本公开不需要通过复杂的代码来实现对用户界面的测试,从而提高了对用户界面测试的效率以及便利性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的实施环境示意图。
图2是根据一示例性实施例示出的一种用户界面信息处理方法流程图。
图3是根据一示例性实施例示出的启动对目标终端显示界面的录屏操作的方法流程图。
图4是根据一示例性实施例示出的一种生成自动操作指令的方法流程图。
图5是根据一示例性实施例示出的代理服务器对业务数据请求的处理方法流程图。
图6是根据一示例性实施例示出的一种对录屏信息的处理方法流程图。
图7是根据一示例性实施例示出的一种页面标记信息集合生成方法流程图。
图8是根据一示例性实施例示出的一种基于标记信息的帧图片匹配方法流程图。
图9是根据一示例性实施例示出的一种基于属性信息转换的标记信息匹配方法流程图。
图10是根据一示例性实施例示出的一种用户界面差异信息生成方法流程图。
图11是根据一示例性实施例示出的用户界面信息处理流程交互图。
图12是根据一示例性实施例示出的第一示例关系示意图。
图13是根据一示例性实施例示出的一种用户界面信息处理装置框图。
图14是根据一示例性实施例示出的一种电子设备结构示意图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
首先对本公开实施例中涉及的名词做以下解释:
DB:database,数据库。
OpenCv:是一个跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。
Airtest:一款基于图像识别和poco控件识别的UI自动化测试工具。
Mitmproxy:一款支持SSL(Secure Sockets Layer,安全套接字协议)的HTTP代理,它可以用于调试HTTP通信,发起中间人攻击等。
Gif:Graphics Interchange Format,一种位图图形文件格式。
请参阅图1,其示出了本公开实施例提供的实施环境示意图,该实施环境可包括:处理终端110、目标终端120、代理服务器130以及后台业务服务器140,目标终端120中安装有目标应用程序的对照版本和测试版本;其中处理终端110与目标终端120之间可通过数据线进行数据通信,也可通过网络进行数据通信;目标终端120与代理服务器130之间、代理服务器130与后台业务服务器140之间可通过网络进行数据通信。
具体地,处理终端110启动对目标终端120的显示界面的录屏操作,将自动操作指令发送给目标终端120;目标终端120根据自动操作指令对目标应用程序的对照版本和测试版本的用户界面分别进行自动触发操作,生成相应的业务数据请求,将业务数据请求发送给代理服务器130;当代理服务器130存储有与业务数据请求对应的业务数据时,直接将业务数据返回给目标终端120,当代理服务器130没有存储与业务数据请求对应的业务数据时,代理服务器130从后台业务服务器140获取相应的业务数据并返回给目标终端120;同时代理服务器130将获取到的业务数据存储到数据库DB中,以便下次直接返回给目标终端120,目标终端120对接收到的业务数据进行展示;处理终端110根据操作对照版本和测试版本的用户界面过程的录屏信息生成用户界面差异信息。
目标终端120可以基于浏览器/服务器模式(Browser/Server,B/S)或客户端/服务器模式(Client/Server,C/S)与代理服务器130进行通信。目标终端120可以包括:智能手机、平板电脑、笔记本电脑、数字助理、智能可穿戴设备、车载终端等类型的实体设备。本公开实施例中的目标终端120上运行的操作系统可以包括但不限于安卓系统、IOS系统、linux、windows等。
目标终端120与代理服务器130之间、代理服务器130与后台业务服务器140之间可以通过有线或者无线建立通信连接,代理服务器130或后台业务服务器140可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群,其中服务器可以是云端服务器。
为了解决相关技术中在对用户界面进行测试时需要通过复杂的代码实现,或者对用户界面测试操作覆盖流程不全的问题,本公开实施例提供了一种用户界面信息处理方法,该方法的执行主体可以为上述图1中的处理终端,在软件测试场景中,处理终端可以为发起软件测试流程的控制终端;具体地,请参阅图2,该方法可包括:
S210.启动对目标终端的显示界面的录屏操作;所述目标终端中安装有目标应用程序的对照版本和测试版本。
当测试人员需要对目标应用程序进行测试时,可通过处理终端发起用户界面测试流程,处理终端便会启动对目标终端的显示界面的录屏操作,这样使得只要在目标终端中显示的信息均会被录制成视频信息,从而便于后续根据操作过程中的录屏信息进行界面差异信息的分析。
其中,对于启动对目标终端显示界面的录屏操作的具体方法可参阅图3,该方法可包括:
S310.获取所述目标终端的界面显示信息,对所述目标终端的界面显示信息进行显示。
S320.对显示的所述目标终端的界面显示信息进行录屏。
根据上述内容可知,处理终端与目标终端之间可通过数据线或者网络进行数据传输,从而处理终端可通过相应指令获取目标终端的界面显示信息,并且在处理终端对获取到的目标终端的界面显示信息进行显示,并且调用相应的录屏工具对界面显示信息进行录屏。录屏操作一旦启动,即会对在处理终端显示的目标终端的显示界面进行录屏,直至停止录屏操作。由此可见,对目标终端的显示界面进行录屏的操作是在处理终端完成的,只需要从目标终端获取显示界面信息即可,并不需要由目标终端进行录屏操作,从而减轻了目标终端的处理压力;另外由于录屏操作也属于用户界面测试流程的一部分,在处理终端进行录屏操作也便于处理终端对用户界面测试流程进行统一管理,避免由于流程衔接不当对测试结果造成影响。
另外,目标终端中安装的目标应用程序的对照版本可以是指线上运行版本,一般默认线上运行版本的用户界面是可信任的并且在一个版本周期内时运行稳定的,所以可将线上运行版本作为对照版本;测试版本一般是指待发布的版本,相对于对照版本会有部分改动;通过将对照版本的用户界面与测试版本的用户界面进行比对测试,可以确定出更新后的测试版本在用户界面显示上是否会出现问题。
S220.生成与所述目标应用程序对应的自动操作指令,所述自动操作指令用于对所述目标应用程序的用户界面进行自动触发操作。
请参阅图4,其示出了一种生成自动操作指令的方法,该方法可包括:
S410.对所述目标应用程序涉及的用户界面进行分析,确定所述用户界面中包含的多项操作项,以及每项操作项对应的操作类型。
目标应用程序的每个界面中均会包含多项操作项,例如按钮、滚动条、文本标签等;相应的操作类型可包括点击跳转、点击展示、点击切换、拖动显示等;例如对于不同的按钮来说,按钮A的操作类型是点击跳转,按钮B的操作类型是点击展示。
S420.基于每项操作项以及每项操作项对应的操作类型,生成与每项操作项对应的操作指令。
将每项操作项与该操作项对应的操作类型对应起来,生成相应的操作指令,这样使得执行操作指令的目标终端在接收到操作指令时,首先找到操作指令中的操作项,在对该操作项进行操作之后的运行流程由该操作项对应的操作类型所确定。
S430.按照预设执行顺序对各项操作项对应的操作指令进行排序,生成与所述目标应用程序对应的自动操作指令。
自动操作指令具体可以脚本的形式生成,即生成了包含按照预设执行顺序进行排序的自动操作指令的测试脚本。
生成了与目标应用程序对应的自动操作指令之后,当安装有目标应用程序的目标终端接收到自动操作指令之后,便可根据预设执行顺序对目标应用程序各页面中的操作项进行自动触发操作,而并不要人工进行触发操作,从而既节省了人力资源,提高了操作效率,又能够避免人工操作失误对测试结果的影响。
通过对各项操作项对应的操作指令进行排序,使得后续根据自动操作指令分别对对照版本和测试版本进行自动触发操作时,自动触发操作顺序一致,相应界面显示流程也是一致的,便于后续进行相应阶段的界面显示对比对。
S230.将所述自动操作指令发送给所述目标终端,以使得所述目标终端:基于所述自动操作指令分别对所述对照版本的用户界面以及所述测试版本的用户界面进行自动触发操作,生成业务数据请求;接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示。
目标终端在接收到自动操作指令后,分别对目标应用程序的对照版本和测试版本的用户界面进行自动触发操作,需要说明的是,对对照版本和测试版本的自动触发操作是在不同时间段分别进行的,至于是先对对照版本进行自动触发操作还是先对测试版本进行触发操作,本公开实施例不做具体限定。例如,可以先根据自动操作指令对对照版本的用户界面进行自动触发操作,生成业务数据请求,接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示,再根据自动操作指令对测试版本的用户界面进行自动触发操作,生成业务数据请求,接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示;也可以先根据自动操作指令对测试版本的用户界面进行自动触发操作,生成业务数据请求,接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示,再根据自动操作指令对对照版本的用户界面进行自动触发操作,生成业务数据请求,接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示。
在生成业务数据请求之后,目标终端会将业务数据发送给代理服务器,代理服务器会根据业务数据请求返回相应的业务数据,具体的代理服务器对业务数据请求的处理方法可参阅图5,该方法可包括:
S510.判断业务数据请求中的业务请求数据标识是否存在于预设白名单中,当所述业务请求数据标识存在于所述预设白名单时,执行步骤S520;当所述业务请求数据标识不存在于所述预设白名单时,执行步骤S550。
S520.判断数据库中是否存在与所述业务请求数据标识对应的业务数据,当数据库中存在与所述业务请求数据标识对应的业务数据时,执行步骤S530;当数据库中不存在与所述业务请求数据标识对应的业务数据时,执行步骤S540。
S530.将所述业务数据发送给所述目标终端。
S540.从所述目标应用程序对应的后台业务服务器获取与所述业务请求数据标识对应的后台数据,对所述后台数据进行固化处理,将固化处理后的后台数据存储到所述数据库中,并将所述固化处理后的后台数据作为所述业务数据发送给所述目标终端。
S550.从所述目标应用程序对应的后台业务服务器获取与所述业务请求数据标识对应的后台数据,并发送给所述目标终端。
其中,当对所述对照版本的用户界面和所述测试版本的用户界面中相同的操作项分别进行操作时,生成相同的业务数据请求。
根据上述内容可知,每个用户界面上均可包括多项操作项,对于某些返回数据易变的操作项,在不同时间点对用户界面上的同一返回数据易变的操作项进行操作后,返回的业务数据却是不同的;上述预设白名单中包含的是返回数据易变的操作项对应的业务数据请求标识。
例如对于推荐操作项,由于后台业务服务器对于推荐内容数据是不断更新的,从而便会导致在不同时间点所获取到的推荐内容数据是不同的,那么这就会造成这样一种情况:在对对照版本的用户界面中的推荐操作项进行操作时,返回业务数据1并显示;在对测试版本的用户界面中的推荐操作项进行操作时,返回业务数据2并显示,且业务数据1和业务数据2是不同的,这样在后续进行录屏信息比对时,会将显示业务数据1的页面和显示业务数据2的页面确定为具有差异,但这种差异并不是目标应用程序本身运行过程中的差异,而是由于返回数据不同造成的差异,从而需要避免由于返回数据不同造成的差异对最终测试结果的影响,所以本公开实施例中引入了代理服务器,通过代理服务器对返回数据易变的操作项的返回数据进行固化处理,以使得在不同时间点操作该返回数据易变的操作项时,所返回的数据均是相同的,从而基于返回数据的显示界面也是相同的;从而确保对照版本和测试版本在发出相同的业务数据请求时所返回的业务数据是相同的,规避了由于返回数据不同对用户界面比对所带来的影响。
S240.确定包含对所述对照版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第一录屏信息,确定包含对所述测试版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第二录屏信息。
本公开实施例中的第一录屏信息中的对对照版本的用户界面进行触发操作的录屏信息具体可包括对用户界面进行触发的行为信息,以及触发操作之后的运行信息,例如跳转或者切换等;第一录屏信息中的进行业务数据展示的录屏信息具体可包括业务数据加载的过程信息以及业务数据展示的过程信息;对于第二录屏信息中包含的具体信息与第一录屏信息类似,在此不再赘述。
另外,对于第一录屏信息或第二录屏信息的起始位置,可以基于目标应用程序的启动页面来确定,例如当找到包含特定logo的页面、或者包含“跳过”字样的页面等,可确定其为起始页面,并将其分别作为第一录屏信息和第二录屏信息的起始位置,从而实现了录屏信息开始位置的对齐。
S250.基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息。
由于第一录屏信息和第二录屏信息均是视频形式的信息,为了便于进行具体用户界面的比对,可以对录屏信息进行拆帧处理,得到帧图片,从而基于相应的帧图片比对来生成用户界面差异信息,具体请参阅图6,其示出了一种对录屏信息的处理方法,该方法可包括:
S610.对所述第一录屏信息以及所述第二录屏信息分别进行拆帧处理,生成第一帧序列和第二帧序列。
按照视频帧率分别对第一录屏信息和第二录屏信息进行拆帧处理,得到若干张帧图片,相应可生成第一帧序列和第二帧序列。
S620.当所述第一帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第一帧序列;当所述第二帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第二帧序列。
S630.基于所述预处理之后的第一帧序列以及所述预处理之后的第二帧序列,生成所述对照版本和所述测试版本的用户界面差异信息。
由于录屏过程中是对界面显示的所有信息进行录制,对于一个在录屏信息中持续时间较长的显示界面,在进行拆帧时可能会有多张帧图片对应同一显示界面,即会出现多张帧图片相同的情况,为了减少后续基于帧图片比对的工作量,可以过滤掉重复的帧图片,即若存在多张相同的帧图片,只需要保留其中一张帧图片即可。经过多第一帧序列和第二帧序列的重复帧图片进行去重之后,即可得到预处理之后的第一帧序列以及预处理之后的第二帧序列。
目标应用程序中可包括多个页面,每个页面均有与其对应的分类标签,对于每个页面可提取出相应的标记信息,该标记信息即可用于标识该页面的特征信息以区别于其他页面,具体请参阅图7,其示出了一种页面标记信息集合生成方法,该方法可包括:
S710.预先确定所述目标应用程序中与各标签分别对应的页面,分别提取出各页面的标记信息,确定各页面的标记信息的属性信息。
S720.基于各页面的标记信息以及各页面的标记信息的属性信息,生成页面标记信息集合。
对于每个标签所对应的页面,其中存在能够唯一标识该页面的特征信息,该特征信息即可确定为标记信息,例如在“首页”标签所对应的页面,“首页”这两个字是突出显示的,从而可基于突出显示的“首页”这两个字生成相应的标记信息,具体可生成包含突出显示的“首页”这两个字的图片,并将该图片作为“首页”标签对应页面的标记信息。在确定了标记信息之后,为了便于在后续根据帧图片中的信息进行图片分类,可以相应确定标记信息的属性信息,具体标记信息的属性信息可包括:标记信息的坐标位置信息、标记信息的图片分辨率、查找匹配时长以及标记信息相似度阈值等,其中查找匹配时长是指在一张帧图片中找到标记信息所耗费的时长,标记信息相似度阈值是指在一张帧图片中找到的标记信息与实际标记信息的相似度。
从而基于每个页面的标记信息以及相应的属性信息即可生成页面标记信息集合,对于上述预处理之后的第一帧序列和预处理之后的第二帧序列中的各张帧图片,可分别确定相应所属的目标页面,具体请参阅图8,其示出了一种基于标记信息的帧图片匹配方法,该方法可包括:
S810.计算所述预处理之后的第一帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第一帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第一目标页面,以及所述第一目标页面的标记信息。
S820.计算所述预处理之后的第二帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第二帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息。
S830.将包含有相同标记信息的所述第一目标页面与所述第二目标页面的帧图片进行比对,得到所述对照版本和所述测试版本的用户界面差异信息。
以预处理之后的第一帧序列为例来说明基于标记信息的帧图片匹配方法,首先计算预处理之后的第一帧序列中相邻帧图片之间的相似度,具体的相似度计算方法可通过OpenCV计算帧图片的OpenCV histogram;将帧图片相似度大于第一阈值的帧图片划分到同一个周期,从而可得到至少一个周期的帧图片,每个周期内可包括至少一张帧图片;由此可以看出同一周期内的帧图片之间具有较大的相似度。对于每个周期内的帧图片,根据页面标记信息集合中的标记信息及相应的属性信息进行匹配,例如,对于一张帧图片,根据各项属性信息中的坐标位置信息来分别找出帧图片的特定部分;提取每个特定部分的图片信息与相应的标记信息进行相似度匹配;将符合相应属性信息中的查找匹配时长以及标记信息相似度阈值的标记信息确定为该帧图片中所包含的标记信息;根据帧图片中包含的标记信息确定帧图片所属的第一目标页面,以及将匹配到的标记信息作为第一目标页面的标记信息。对于预处理之后的第二帧序列的帧图片匹配方法与上述第一帧序列的帧图片匹配方法相同,在此不再赘述。
第一帧序列中的各帧图片以及第二帧序列中的各帧图片均是按时间顺序排列的;同一周期内的帧图片一般对应同一标签页面,当一个周期内包括多张帧图片时,这多张帧图片一般包含相同的标记信息,将包含相同标记信息的第一目标页面与第二目标页面的帧图片按照排序依次进行对比,从而可得到对照版本和测试版本的用户界面差异信息。例如,对于对照版本,第一周期中所包含的多张帧图片对应“首页”标签页面;对于测试版本,第一周期中所包含的多张帧图片也对应“首页”标签页面,从而可将对照版本的第一周期中的第一张帧图片与测试版本的第一周期中的第一张帧图片进行比对,将对照版本的第一周期中的第二张帧图片与测试版本的第一周期中的第二张帧图片进行比对,以此类推,直至比对完第一周期内的各张帧图片,从而得到用户界面差异信息。
上述的页面标记信息集合是预先生成的,预先生成页面标记信息集合的预设终端与本公开实施例中进行目标应用程序测试的目标终端可能是不同的,从而预设终端与目标终端的分辨率可能不同,页面标记信息集合中的属性信息为与预设终端的分辨率对应的标记信息的属性信息;为了保证标记信息能够适配不同型号的终端,需要进行标记信息的属性信息的转换,以便于在基于目标终端进行操作时,能够匹配到相应的标记信息;具体请参阅图9,其示出了一种基于属性信息转换的标记信息匹配方法,可包括:
S910.获取所述目标终端的分辨率。
S920.当所述目标终端的分辨率与所述预设终端的分辨率不同时,将与所述预设终端的分辨率对应的标记信息的属性信息转换为与所述目标终端的分辨率对应的标记信息的属性信息。
S930.基于所述页面标记信息集合中各页面的标记信息,以及相应的与所述目标终端的分辨率对应的标记信息的属性信息,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息。
通过与所述目标终端的分辨率对应的标记信息的属性信息进行标记信息的查找,能够提高标记信息查找的效率和准确率。图9是以匹配测试版本对应的帧图片标记信息为例进行说明的,匹配对照版本的标记信息的方法与其相同,在此不再赘述。
对于对照版本与测试版本的相应页面进行具体比对时,可以基于像素点比对来实现,请参阅图10,其示出了一种用户界面差异信息生成方法,该方法可包括:
S1010.遍历所述第一目标页面对应的帧图片的各个像素点。
S1020.将所述第一目标页面对应的帧图片的每个像素点值与所述第二目标页面对应的帧图片中相应的像素点值进行比较。
S1030.分别在所述第一目标页面对应的帧图片以及在所述第二目标页面对应的帧图片中对像素点值不同的像素点进行标记。
S1040.基于标记的不同像素点生成所述对照版本和所述测试版本的用户界面差异信息。
基于上述内容可知,在预处理的第一帧序列以及预处理的第二帧序列中,与第一目标页面对应的至少一张帧图片与第二目标页面对应的至少一张帧图片均是按照时间顺序进行排列的,从而可按照先后排列顺序进行比对,具体地,将第一目标页面对应的第一张帧图片与第二目标页面对应的第一张帧图片进行比对,将第一目标页面对应的第二张帧图片与第二目标页面对应的第二张帧图片进行比对,以此类推。
具体在进行两张帧图片的比对过程中,基于两张帧图片中相应像素点值进行比较,并将像素点值不同的像素点标记出来,基于标记出来的像素点,即可生成这两张帧图片的差异信息。
本公开实施例还提供了一种用户界面信息处理系统,可包括处理终端110、目标终端120、代理服务器130以及后台业务服务器140,请参阅图11,其相应的实施流程可包括:
S1102.处理终端启动对目标终端的显示界面的录屏操作,生成与所述目标应用程序对应的自动操作指令。
S1104.处理终端将所述自动操作指令发送给目标终端。
S1106.目标终端基于所述自动操作指令分别对目标应用程序对照版本的用户界面以及测试版本的用户界面进行自动触发操作,生成业务数据请求。
S1108.目标终端将业务数据请求发送给代理服务器。
S1110.代理服务器判断业务数据请求中的业务请求数据标识是否存在于预设白名单中;当所述业务请求数据标识存在于所述预设白名单且数据库中存在与所述业务请求数据标识对应的业务数据时,执行步骤S1112;当所述业务请求数据标识存在于所述预设白名单且所述数据库中不存在与所述业务请求数据标识对应的业务数据时,执行步骤S1114。
S1112.代理服务器将所述业务数据发送给所述目标终端。
S1114.代理服务器向后台业务服务器发送业务数据请求。
S1116.后台业务服务器根据业务数据请求中的业务请求数据标识查找与业务请求数据标识对应的后台数据。
S1118.后台业务服务器将后台数据发送给代理服务器。
S1120.代理服务器对所述后台数据进行固化处理,将固化处理后的后台数据存储到所述数据库中。
S1122.代理服务器将所述固化处理后的后台数据作为所述业务数据发送给所述目标终端。
S1124.目标终端对所述业务数据进行展示。
S1126.处理终端基于录屏信息生成目标应用程序的对照版本和测试版本的用户界面差异信息。
下面以一示例说明本公开的具体实施流程,以目标终端为移动终端为例进行说明,APP上的页面内容是根据接口返回的数据进行展现的,因此UI的展现受返回的数据影响较大,如推荐页面前后两次进入的数据都是不一样的,UI展现自然也是不同的;随着不同交互的发生,最终的UI展现也不同,比如对某一个帖子进行点赞,点赞后点赞数更新,这种情况下在不同时间点查看点赞数所返回的数据UI显示也是存在一定的差异的;再例如对轮播图的展示,不同时间点进入轮播图页面所展现的UI也可能不同。为了解决由于接口数据不同带来的UI展示不同对比对结果的影响,采用mock代理工具对接口返回数据进行自定义,移动终端、Mitmproxy代理人工具以及后台业务服务器之间的关系可参阅图12,其实施流程具体可包括:
1.通过开源工具Mitmproxy启动mock服务,移动终端连接该代理服务。
2.Mitmproxy判断当前是否需要写数据,如果是,根据URI(Uniform ResourceIdentifier,统一资源标识符)白名单,把相应接口的返回数据response body以字典(key-value)的形式写入数据库DB,字典的key可以是接口的URI。
3.Mitmproxy判断如果是需要读数据,根据URI从数据库DB中获取固化的数据并返回给移动终端。
其中,对于由于接口数据不同带来的UI展示不同的接口数据,需要进行自定义固化处理;例如,Mitmproxy判断如果是读数据且数据中含有轮播图字段,将返回数据response中的轮播图数据保留一条,其他删除,从而避免轮播图滚动带来的视频对比影响。
基于上述mock服务实现了相关返回数据的固化处理之后,可启动对目标应用程序的用户界面的测试,停止测试包后启动测试包,通过代码控制打开屏幕录制进行录屏,并通过自动化的方式跳转至不同的页面,该部分通过airtest框架进行实现;本示例中的线上包和测试包可分别对应上述的对照版本和测试版本;从而具体流程可包括:
1.通过airtest start、stop app包名方法控制app启停,具体如下,其中先stopapp是为了减少app原有状态的影响:
stop_app("com.kwai.acfuncoreios.beta1")
start_app("com.kwai.acfuncoreios.beta1")
2.以ios为例通过xrecord进行录屏,具体方式如下:
ios:xrecord–quicktime-i="deviceid"-o="ios_out.mp4"–force
3.启动线上包,按照步骤1和步骤2的方式对线上包进行操作。
4.将对线上包进行操作以及对测试包进行操作的录屏文件进行比对,找出不同,具体可包括:
(1)通过OpenCV按照视频帧率拆帧。
(2)过滤重复帧,通过对比拆帧后的前后两张图片,如果图片相同则只保留一帧,从而减小后续步骤的工作量。
(3)对于不同的页面进行tag标记,具体地,找出页面中特定的部分,并标记该部分左上、右下的y坐标,如下:
tag_sign(part_pic_name,(ymin,ymax),resolution=(1125,2436)),timeout=3,threshold=0.90,page_name="videoDetail")
其中part_pic_name页面特定部分的图片名称,(ymin,ymax)是标记部分左上、右下的y坐标,resolution表示当前获取标记部分的图片的分辨率,保证该方案在不同的分辨率机型可以适配,timeout表示对拆帧图片标记tag时的最大寻找时间,threshold表示对拆帧图片标记tag时匹配的阈值,page_name表示页面名称。
(4)屏幕录制视频开始位置对齐
通过(3)的步骤找到打开视频的起始位置,例如当找到包含“跳过”tag的帧时,认为该帧是录屏的起始位置。
(5)对于前后帧图片相似度的对比结果以及通过步骤(3)获取到的页面标识将视频划分为不同的周期,相似度可通过计算图片的OpenCV histogram来实现。
(6)把步骤(5)中生成后的周期图片帧进行对比,把有差异图片对比结果合成gif供测试人员做最终验证。
通过本公开测试人员不用花大量精力判断用户界面中是否存在相应的元素,只需实现自动化操作即可,降低了自动化回归的成本,规避人工漏测风险,提高回归覆盖面;支持自定义数据返回,可以避免数据不一致带来的UI展现不同;回归验证报告中包含具体的页面,可读性高,且通过关键节点提取对录屏视频进行分割,网络因素带来的客户端页面加载情况不一致对测试结果有所影响的问题得到控制;通过tag标记的方式能够进一步保证图片帧所在页面的识别,进一步提高准确率。
本公开通过启动对目标终端的显示界面的录屏操作,将与目标应用程序对应的自动操作指令发送给目标终端,以使得目标终端:基于自动操作指令分别对应用程序的对照版本和测试版本进行自动触发操作,生成业务数据请求,以及接收基于业务数据请求返回的业务数据,对业务数据进行展示;通过向目标终端发送自动操作指令,从而使得目标终端对对照版本和测试版本的用户界面分别进行自动触发操作,而不需要人工进行操作,既节省了人力资源,提高了操作效率,又能够避免人工操作失误对结果的影响;从录屏信息中确定出与操作对照版本的用户界面相关的录屏信息为第一录屏信息,与操作测试版本的用户界面相关的录屏信息为第二录屏信息,根据第一录屏信息和第二录屏信息生成对照版本和测试版本的用户界面差异信息;通过对操作用户界面的过程进行录屏,只要是用户能够看到的UI显示均能够被覆盖到,从而解决了通过对用户界面进行截图比对存在的覆盖流程不全的问题,提高了测试覆盖率;另外,本公开不需要通过复杂的代码来实现对用户界面的测试,从而提高了对用户界面测试的效率以及便利性。
图13是根据一示例性实施例示出的一种用户界面信息处理装置框图,可包括:
录屏操作启动单元1310,被配置为执行启动对目标终端的显示界面的录屏操作;所述目标终端中安装有目标应用程序的对照版本和测试版本;
自动操作指令生成单元1320,被配置为执行生成与所述目标应用程序对应的自动操作指令,所述自动操作指令用于对所述目标应用程序的用户界面进行自动触发操作;
自动操作指令发送单元1330,被配置为执行将所述自动操作指令发送给所述目标终端,以使得所述目标终端:基于所述自动操作指令分别对所述对照版本的用户界面以及所述测试版本的用户界面进行自动触发操作,生成业务数据请求;接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示;
录屏信息确定单元1340,被配置为执行确定包含对所述对照版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第一录屏信息,确定包含对所述测试版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第二录屏信息;
差异信息生成单元1350,被配置为执行基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述自动操作指令生成单元1320包括:
操作项确定单元,被配置为执行对所述目标应用程序涉及的用户界面进行分析,确定所述用户界面中包含的多项操作项,以及每项操作项对应的操作类型;
第一生成单元,被配置为执行基于每项操作项以及每项操作项对应的操作类型,生成与每项操作项对应的操作指令;
第二生成单元,被配置为执行按照预设执行顺序对各项操作项对应的操作指令进行排序,生成与所述目标应用程序对应的自动操作指令。
在一示例性实施例中,所述自动操作指令发送单元1330包括:
第一发送单元,被配置为执行将所述自动操作指令发送给所述目标终端,以使得所述目标终端:
将所述业务数据请求发送给代理服务器,所述业务数据请求中包括业务请求数据标识,以使得所述代理服务器:判断所述业务请求数据标识是否存在于预设白名单中;当所述业务请求数据标识存在于所述预设白名单且数据库中存在与所述业务请求数据标识对应的业务数据时,将所述业务数据发送给所述目标终端;当所述业务请求数据标识存在于所述预设白名单且所述数据库中不存在与所述业务请求数据标识对应的业务数据时,从所述目标应用程序对应的后台业务服务器获取与所述业务请求数据标识对应的后台数据,对所述后台数据进行固化处理,将固化处理后的后台数据存储到所述数据库中,并将所述固化处理后的后台数据作为所述业务数据发送给所述目标终端;对所述业务数据进行展示;
其中,当对所述对照版本的用户界面和所述测试版本的用户界面中相同的操作项分别进行操作时,生成相同的业务数据请求。
在一示例性实施例中,所述差异信息生成单元1350包括:
拆帧处理单元,被配置为执行对所述第一录屏信息以及所述第二录屏信息分别进行拆帧处理,生成第一帧序列和第二帧序列;
重复帧处理单元,被配置为执行当所述第一帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第一帧序列;当所述第二帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第二帧序列;
第三生成单元,被配置为执行基于所述预处理之后的第一帧序列以及所述预处理之后的第二帧序列,生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述装置还包括:
标记信息预处理单元,被配置为执行预先确定所述目标应用程序中与各标签分别对应的页面,分别提取出各页面的标记信息,确定各页面的标记信息的属性信息;
页面标记信息集合生成单元,被配置为执行基于各页面的标记信息以及各页面的标记信息的属性信息,生成页面标记信息集合;
所述第三生成单元包括:
第一计算单元,被配置为执行计算所述预处理之后的第一帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第一帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第一目标页面,以及所述第一目标页面的标记信息;
第二计算单元,被配置为执行计算所述预处理之后的第二帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第二帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息;
帧图片比对单元,被配置为执行将包含有相同标记信息的所述第一目标页面与所述第二目标页面的帧图片进行比对,得到所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述标记信息的属性信息为与预设终端的分辨率对应的标记信息的属性信息;
所述第二计算单元包括:
分辨率获取单元,被配置为执行获取所述目标终端的分辨率;
分辨率转换单元,被配置为执行当所述目标终端的分辨率与所述预设终端的分辨率不同时,将与所述预设终端的分辨率对应的标记信息的属性信息转换为与所述目标终端的分辨率对应的标记信息的属性信息;
第一确定单元,被配置为执行基于所述页面标记信息集合中各页面的标记信息,以及相应的与所述目标终端的分辨率对应的标记信息的属性信息,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息。
在一示例性实施例中,所述帧图片比对单元包括:
像素点遍历单元,被配置为执行遍历所述第一目标页面对应的帧图片的各个像素点;
像素点值比较单元,被配置为执行将所述第一目标页面对应的帧图片的每个像素点值与所述第二目标页面对应的帧图片中相应的像素点值进行比较;
像素点标记单元,被配置为执行分别在所述第一目标页面对应的帧图片以及在所述第二目标页面对应的帧图片中对像素点值不同的像素点进行标记;
第四生成单元,被配置为执行基于标记的不同像素点生成所述对照版本和所述测试版本的用户界面差异信息。
在一示例性实施例中,所述录屏操作启动单元包括:
界面显示信息获取单元,被配置为执行获取所述目标终端的界面显示信息,对所述目标终端的界面显示信息进行显示;
录屏单元,被配置为执行对显示的所述目标终端的界面显示信息进行录屏。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
在一示例性实施例中,还提供了一种包括指令的存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本公开实施例中的任一方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本实施例还提供了一种电子设备,其结构图请参见图14,该设备1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)1422(例如,一个或一个以上处理器)和存储器1432,一个或一个以上存储应用程序1442或数据1444的存储媒体1430(例如一个或一个以上海量存储设备)。其中,存储器1432和存储媒体1430可以是短暂存储或持久存储。存储在存储媒体1430的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对设备中的一系列指令操作。更进一步地,中央处理器1422可以设置为与存储媒体1430通信,在设备1400上执行存储媒体1430中的一系列指令操作。设备1400还可以包括一个或一个以上电源1426,一个或一个以上有线或无线网络接口1450,一个或一个以上输入输出接口1458,和/或,一个或一个以上操作系统1441,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。本实施例上述的任一方法均可基于图14所示的设备进行实施。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种用户界面信息处理方法,其特征在于,所述方法包括:
启动对目标终端的显示界面的录屏操作;所述目标终端中安装有目标应用程序的对照版本和测试版本;
生成与所述目标应用程序对应的自动操作指令,所述自动操作指令用于对所述目标应用程序的用户界面进行自动触发操作;
将所述自动操作指令发送给所述目标终端,以使得所述目标终端:基于所述自动操作指令分别对所述对照版本的用户界面以及所述测试版本的用户界面进行自动触发操作,生成业务数据请求;接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示;
确定包含对所述对照版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第一录屏信息,确定包含对所述测试版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第二录屏信息;
基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息。
2.根据权利要求1所述的用户界面信息处理方法,其特征在于,所述生成与所述目标应用程序对应的自动操作指令包括:
对所述目标应用程序涉及的用户界面进行分析,确定所述用户界面中包含的多项操作项,以及每项操作项对应的操作类型;
基于每项操作项以及每项操作项对应的操作类型,生成与每项操作项对应的操作指令;
按照预设执行顺序对各项操作项对应的操作指令进行排序,生成与所述目标应用程序对应的自动操作指令。
3.根据权利要求2所述的用户界面信息处理方法,其特征在于,所述将所述自动操作指令发送给所述目标终端,以使得所述目标终端:接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示包括:
将所述自动操作指令发送给所述目标终端,以使得所述目标终端:
将所述业务数据请求发送给代理服务器,所述业务数据请求中包括业务请求数据标识,以使得所述代理服务器:判断所述业务请求数据标识是否存在于预设白名单中;当所述业务请求数据标识存在于所述预设白名单且数据库中存在与所述业务请求数据标识对应的业务数据时,将所述业务数据发送给所述目标终端;当所述业务请求数据标识存在于所述预设白名单且所述数据库中不存在与所述业务请求数据标识对应的业务数据时,从所述目标应用程序对应的后台业务服务器获取与所述业务请求数据标识对应的后台数据,对所述后台数据进行固化处理,将固化处理后的后台数据存储到所述数据库中,并将所述固化处理后的后台数据作为所述业务数据发送给所述目标终端;
对所述业务数据进行展示;
其中,当对所述对照版本的用户界面和所述测试版本的用户界面中相同的操作项分别进行操作时,生成相同的业务数据请求。
4.根据权利要求1所述的用户界面信息处理方法,其特征在于,所述基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息包括:
对所述第一录屏信息以及所述第二录屏信息分别进行拆帧处理,生成第一帧序列和第二帧序列;
当所述第一帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第一帧序列;当所述第二帧序列中存在由至少两张相邻且相同的帧图片组成的重复帧图片组时,保留所述重复帧图片组中的一张帧图片,得到预处理之后的第二帧序列;
基于所述预处理之后的第一帧序列以及所述预处理之后的第二帧序列,生成所述对照版本和所述测试版本的用户界面差异信息。
5.根据权利要求4所述的用户界面信息处理方法,其特征在于,所述方法还包括:
预先确定所述目标应用程序中与各标签分别对应的页面,分别提取出各页面的标记信息,确定各页面的标记信息的属性信息;
基于各页面的标记信息以及各页面的标记信息的属性信息,生成页面标记信息集合;
所述基于所述预处理之后的第一帧序列以及所述预处理之后的第二帧序列,生成所述对照版本和所述测试版本的用户界面差异信息包括:
计算所述预处理之后的第一帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第一帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第一目标页面,以及所述第一目标页面的标记信息;
计算所述预处理之后的第二帧序列中相邻帧图片的图片相似度,基于所述图片相似度将预处理之后的第二帧序列划分为至少一个周期的帧图片;将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息;
将包含有相同标记信息的所述第一目标页面与所述第二目标页面的帧图片进行比对,得到所述对照版本和所述测试版本的用户界面差异信息。
6.根据权利要求5所述的用户界面信息处理方法,其特征在于,所述标记信息的属性信息为与预设终端的分辨率对应的标记信息的属性信息;
所述将每个周期内的帧图片与所述页面标记信息集合中各页面的标记信息以及各页面的标记信息的属性信息进行匹配,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息包括:
获取所述目标终端的分辨率;
当所述目标终端的分辨率与所述预设终端的分辨率不同时,将与所述预设终端的分辨率对应的标记信息的属性信息转换为与所述目标终端的分辨率对应的标记信息的属性信息;
基于所述页面标记信息集合中各页面的标记信息,以及相应的与所述目标终端的分辨率对应的标记信息的属性信息,确定每个周期内的帧图片所属的第二目标页面,以及所述第二目标页面的标记信息。
7.根据权利要求6所述的用户界面信息处理方法,其特征在于,所述将包含有相同标记信息的所述第一目标页面与所述第二目标页面的帧图片进行比对,得到所述对照版本和所述测试版本的用户界面差异信息包括:
遍历所述第一目标页面对应的帧图片的各个像素点;
将所述第一目标页面对应的帧图片的每个像素点值与所述第二目标页面对应的帧图片中相应的像素点值进行比较;
分别在所述第一目标页面对应的帧图片以及在所述第二目标页面对应的帧图片中对像素点值不同的像素点进行标记;
基于标记的不同像素点生成所述对照版本和所述测试版本的用户界面差异信息。
8.一种用户界面信息处理装置,其特征在于,包括:
录屏操作启动单元,被配置为执行启动对目标终端的显示界面的录屏操作;所述目标终端中安装有目标应用程序的对照版本和测试版本;
自动操作指令生成单元,被配置为执行生成与所述目标应用程序对应的自动操作指令,所述自动操作指令用于对所述目标应用程序的用户界面进行自动触发操作;
自动操作指令发送单元,被配置为执行将所述自动操作指令发送给所述目标终端,以使得所述目标终端:基于所述自动操作指令分别对所述对照版本的用户界面以及所述测试版本的用户界面进行自动触发操作,生成业务数据请求;接收基于所述业务数据请求返回的业务数据,对所述业务数据进行展示;
录屏信息确定单元,被配置为执行确定包含对所述对照版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第一录屏信息,确定包含对所述测试版本的用户界面进行触发操作以及基于相应触发操作进行业务数据展示的录屏信息为第二录屏信息;
差异信息生成单元,被配置为执行基于所述第一录屏信息和所述第二录屏信息,生成所述对照版本和所述测试版本的用户界面差异信息。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的用户界面信息处理方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至7中任一项所述用户界面信息处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011378633.8A CN112612690B (zh) | 2020-11-30 | 2020-11-30 | 一种用户界面信息处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011378633.8A CN112612690B (zh) | 2020-11-30 | 2020-11-30 | 一种用户界面信息处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112612690A true CN112612690A (zh) | 2021-04-06 |
CN112612690B CN112612690B (zh) | 2024-05-14 |
Family
ID=75228326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011378633.8A Active CN112612690B (zh) | 2020-11-30 | 2020-11-30 | 一种用户界面信息处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112612690B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113641587A (zh) * | 2021-08-26 | 2021-11-12 | 北京字跳网络技术有限公司 | 操作界面的测试方法、装置、终端和存储介质 |
CN113934353A (zh) * | 2021-09-30 | 2022-01-14 | 北京五八信息技术有限公司 | 一种信息处理方法及装置 |
US20230126502A1 (en) * | 2021-10-25 | 2023-04-27 | International Business Machines Corporation | Video-based user interface aplication testing |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106371998A (zh) * | 2016-09-13 | 2017-02-01 | 网易(杭州)网络有限公司 | 移动应用的测试系统及方法 |
CN106598867A (zh) * | 2016-12-22 | 2017-04-26 | 深圳中兴网信科技有限公司 | 用户界面的测试方法及测试装置 |
CN106961362A (zh) * | 2017-03-09 | 2017-07-18 | 杭州铜板街互联网金融信息服务有限公司 | 自动化测试方法及移动云测试系统 |
CN109144856A (zh) * | 2018-07-27 | 2019-01-04 | 北京皮尔布莱尼软件有限公司 | 一种ui自动化测试方法、计算设备及存储介质 |
CN109408374A (zh) * | 2018-09-26 | 2019-03-01 | 平安普惠企业管理有限公司 | 应用程序异常远程定位方法、系统、计算机设备和介质 |
CN109783351A (zh) * | 2018-12-13 | 2019-05-21 | 重庆金融资产交易所有限责任公司 | 界面测试方法、装置及计算机可读存储介质 |
CN109857668A (zh) * | 2019-02-03 | 2019-06-07 | 苏州市龙测智能科技有限公司 | Ui自动化功能测试方法、测试装置、测试设备及存储介质 |
CN110221979A (zh) * | 2019-06-04 | 2019-09-10 | 广州虎牙信息科技有限公司 | 应用程序的性能测试方法、装置、设备及存储介质 |
CN110287101A (zh) * | 2019-05-22 | 2019-09-27 | 深圳壹账通智能科技有限公司 | 用户界面自动化测试方法、装置、计算机设备及存储介质 |
CN110554957A (zh) * | 2019-07-31 | 2019-12-10 | 北京三快在线科技有限公司 | 测试用户界面的方法、装置、电子设备及可读存储介质 |
CN111090580A (zh) * | 2019-11-21 | 2020-05-01 | 广州品唯软件有限公司 | 用户界面一致性检测方法、装置及可读存储介质 |
CN111338954A (zh) * | 2020-02-26 | 2020-06-26 | 平安银行股份有限公司 | 一种测试报告的生成方法及设备 |
CN111817916A (zh) * | 2020-07-02 | 2020-10-23 | 浙江同花顺智能科技有限公司 | 基于移动终端集群的测试方法、装置、设备和存储介质 |
-
2020
- 2020-11-30 CN CN202011378633.8A patent/CN112612690B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106371998A (zh) * | 2016-09-13 | 2017-02-01 | 网易(杭州)网络有限公司 | 移动应用的测试系统及方法 |
CN106598867A (zh) * | 2016-12-22 | 2017-04-26 | 深圳中兴网信科技有限公司 | 用户界面的测试方法及测试装置 |
CN106961362A (zh) * | 2017-03-09 | 2017-07-18 | 杭州铜板街互联网金融信息服务有限公司 | 自动化测试方法及移动云测试系统 |
CN109144856A (zh) * | 2018-07-27 | 2019-01-04 | 北京皮尔布莱尼软件有限公司 | 一种ui自动化测试方法、计算设备及存储介质 |
CN109408374A (zh) * | 2018-09-26 | 2019-03-01 | 平安普惠企业管理有限公司 | 应用程序异常远程定位方法、系统、计算机设备和介质 |
CN109783351A (zh) * | 2018-12-13 | 2019-05-21 | 重庆金融资产交易所有限责任公司 | 界面测试方法、装置及计算机可读存储介质 |
CN109857668A (zh) * | 2019-02-03 | 2019-06-07 | 苏州市龙测智能科技有限公司 | Ui自动化功能测试方法、测试装置、测试设备及存储介质 |
CN110287101A (zh) * | 2019-05-22 | 2019-09-27 | 深圳壹账通智能科技有限公司 | 用户界面自动化测试方法、装置、计算机设备及存储介质 |
CN110221979A (zh) * | 2019-06-04 | 2019-09-10 | 广州虎牙信息科技有限公司 | 应用程序的性能测试方法、装置、设备及存储介质 |
CN110554957A (zh) * | 2019-07-31 | 2019-12-10 | 北京三快在线科技有限公司 | 测试用户界面的方法、装置、电子设备及可读存储介质 |
CN111090580A (zh) * | 2019-11-21 | 2020-05-01 | 广州品唯软件有限公司 | 用户界面一致性检测方法、装置及可读存储介质 |
CN111338954A (zh) * | 2020-02-26 | 2020-06-26 | 平安银行股份有限公司 | 一种测试报告的生成方法及设备 |
CN111817916A (zh) * | 2020-07-02 | 2020-10-23 | 浙江同花顺智能科技有限公司 | 基于移动终端集群的测试方法、装置、设备和存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113641587A (zh) * | 2021-08-26 | 2021-11-12 | 北京字跳网络技术有限公司 | 操作界面的测试方法、装置、终端和存储介质 |
CN113934353A (zh) * | 2021-09-30 | 2022-01-14 | 北京五八信息技术有限公司 | 一种信息处理方法及装置 |
US20230126502A1 (en) * | 2021-10-25 | 2023-04-27 | International Business Machines Corporation | Video-based user interface aplication testing |
US11822464B2 (en) * | 2021-10-25 | 2023-11-21 | International Business Machines Corporation | Video-based user interface application testing |
Also Published As
Publication number | Publication date |
---|---|
CN112612690B (zh) | 2024-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112612690B (zh) | 一种用户界面信息处理方法、装置、电子设备及存储介质 | |
CN106658199B (zh) | 一种视频内容的展示方法及装置 | |
CN107665233B (zh) | 数据库数据处理方法、装置、计算机设备和存储介质 | |
CN107025174B (zh) | 用于设备的用户界面异常测试的方法、装置和可读储介质 | |
US10789474B2 (en) | System, method and apparatus for displaying information | |
CN111460356B (zh) | 一种自动登录方法、装置、介质和设备 | |
CN111782492A (zh) | 页面首屏加载时长测试方法、装置、计算机设备及介质 | |
CN108536467B (zh) | 代码的定位处理方法、装置、终端设备及存储介质 | |
CN112882947A (zh) | 一种界面测试方法、装置、设备及存储介质 | |
CN110908922A (zh) | 应用程序的测试方法和装置 | |
CN111309632A (zh) | 应用程序测试方法、装置、计算机设备及存储介质 | |
CN112258214A (zh) | 视频投放方法、装置及服务器 | |
CN113207039A (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN112764838A (zh) | 目标内容的显示方法和装置及电子设备 | |
CN110442806B (zh) | 用于识别图像的方法和装置 | |
CN112711536A (zh) | 自动拨测方法及系统、计算机可读存储介质 | |
CN112035412A (zh) | 数据文件导入方法、设备、存储介质及装置 | |
CN111813685A (zh) | 自动化测试方法和装置 | |
CN111930633A (zh) | 数据测试方法、平台、电子设备及存储介质 | |
CN111782514A (zh) | 一种测试数据的比对方法和装置 | |
CN111931465B (zh) | 基于用户操作自动生成用户手册的方法及系统 | |
CN113392013B (zh) | 用例生成方法及装置 | |
JP7029557B1 (ja) | 判定装置、判定方法および判定プログラム | |
CN115048302A (zh) | 前端的兼容性测试方法及装置、存储介质、电子设备 | |
CN114972500A (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 |