一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

软件测试方法、装置、电子设备及存储介质与流程

2023-01-15 22:12:12 来源:中国专利 TAG:


1.本发明涉及软件测试领域,具体涉及一种软件测试方法、装置、电子设备及存储介质。


背景技术:

2.当今社会,移动互联网快速发展,软件承载的内容也呈爆炸式增长,移动软件的版本迭代正在快速的进行,由最开始的一个月发布一个版本到目前的一个星期发布一个版本。
3.这也就要求软件开发测试人员需要在软件的每个版本发布之前,对软件进行测试回归。因此,给测试人员带来了很大的测试工作量。上述方法,需要大量的软件开发测试人员对软件进行测试,浪费了大量的人力物力财力,且效率较低。


技术实现要素:

4.有鉴于此,本发明实施例提供了一种软件测试方法、装置、电子设备及存储介质,旨在解决现有技术需要大量的软件开发测试人员对软件进行测试,浪费了大量的人力物力财力,且效率较低的问题。
5.根据第一方面,本发明实施例提供了一种软件测试方法,包括:
6.获取与电子设备连接的至少一个终端设备,并控制各个终端设备打开目标软件;
7.向各个终端设备发送针对目标软件的操作指令,并接收各个终端设备返回的指令操作结果;
8.获取各个终端设备对应的当前界面信息;
9.对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果。
10.本发明实施例提供的软件测试方法,获取与电子设备连接的至少一个终端设备,表明了电子设备可以同时连接多个电子设备,从而对多个终端设备中的目标软件进行测试。然后,电子设备控制各个终端设备打开目标软件,向各个终端设备发送针对目标软件的操作指令,使得各个终端设备可以接收到电子设备发送的操作指令,并基于接收到的操作指令进行操作。然后,电子设备接收各个终端设备返回的指令操作结果,然后获取各个终端设备对应的当前界面信息。电子设备对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果,保证了确定的目标软件的测试结果的准确性。上述软件测试方法,不需要测试人员对各个终端设备上的目标软件进行测试,因此提高了软件测试的效率,节省了大量的人力物力财力,实现了自动化对目标软件进行兼容性测试及正常的业务流程测试。
11.结合第一方面,在第一方面第一实施方式中,指令操作结果包括指令操作成功,对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,包括:
12.获取当前界面信息对应的目标界面信息;目标界面信息用于表征终端设备成功完
成操作指令后的界面信息;
13.对当前界面信息进行分析,并将当前界面信息与目标界面信息进行对比;
14.当当前界面信息与目标界面信息一致时,确定指令操作结果准确,并确定目标软件测试成功;
15.当当前界面信息与目标界面信息不一致时,确定指令操作结果不准确,并确定目标软件测试失败。
16.本发明实施例提供的软件测试方法,获取当前界面信息对应的目标界面信息,保证了获取到的当前界面信息对应的目标界面信息的准确性。然后,对当前界面信息进行分析,并将当前界面信息与目标界面信息进行对比,保证了得到的当前界面信息与目标界面信息的对比结果的准确性。当当前界面信息与目标界面信息一致时,确定指令操作结果准确,并确定目标软件测试成功;当当前界面信息与目标界面信息不一致时,确定指令操作结果不准确,并确定目标软件测试失败,保证了得到的目标软件的测试结果的准确性。
17.结合第一方面第一实施方式,在第一方面第二实施方式中,指令操作结果包括指令操作失败,方法还包括:
18.当当前界面信息与目标界面信息一致时,确定指令操作结果不准确,并确定目标软件测试失败;
19.当当前界面信息与目标界面信息不一致时,确定指令操作结果准确,并确定目标软件测试失败。
20.本发明实施例提供的软件测试方法,当当前界面信息与目标界面信息一致时,确定指令操作结果不准确,并确定目标软件测试失败;当当前界面信息与目标界面信息不一致时,确定指令操作结果准确,并确定目标软件测试失败,保证了确定的目标软件对应的测试结果的准确性。
21.结合第一方面第二实施方式,在第一方面第三实施方式中,向各个终端设备发送针对目标软件的操作指令之后,方法还包括:
22.向各个终端设备发送录屏指令,录屏指令用于指示各个终端设备在执行操作指令时进行屏幕录制以及屏幕截图;
23.接收终端设备发送的录屏视频以及截图图像。
24.本发明实施例提供的软件测试方法,向各个终端设备发送录屏指令,录屏指令用于指示各个终端设备在执行操作指令时进行屏幕录制以及屏幕截图,接收终端设备发送的录屏视频以及截图图像,保证了电子设备可以根据录屏视频以及截图图像对终端设备完成操作指令的过程进行追溯。
25.结合第一方面第三实施方式,在第一方面第四实施方式中,在确定目标软件测试失败之后,方法还包括:
26.对录屏视频以及截图图像进行识别;
27.根据识别结果,确定各个终端设备完成操作指令的全过程;
28.对全过程进行分析,确定目标软件测试失败的原因。
29.本发明实施例提供的软件测试方法,对录屏视频以及截图图像进行识别,根据识别结果,确定各个终端设备完成操作指令的全过程,保证了确定的各个终端设备完成操作指令的全过程的准确性。对全过程进行分析,确定目标软件测试失败的原因,保证了确定的
目标软件测试失败的原因的准确性。
30.结合第一方面第四实施方式,在第一方面第五实施方式中,对全过程进行分析,确定目标软件测试失败的原因,包括:
31.对全过程进行分析,确定终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息;
32.对界面特征、运行时间以及界面要素属性信息进行分析,确定目标软件测试失败的原因。
33.本发明实施例提供的软件测试方法,对全过程进行分析,确定终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息,保证了确定的终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息的准确性。然后,对界面特征、运行时间以及界面要素属性信息进行分析,确定目标软件测试失败的原因,保证了确定的目标软件测试失败的原因的准确性。
34.结合第一方面,在第一方面第六实施方式中,方法还包括:
35.获取各个终端设备对应的目标软件的测试结果;
36.对各个终端设备对应的目标软件的测试结果进行分析,生成各个终端设备对应的子目标软件测试报告;
37.将各个终端设备对应的子目标软件测试报告进行拼接聚合处理,生成总目标软件测试报告,并显示总目标软件测试报告。
38.本发明实施例提供的软件测试方法,获取各个终端设备对应的目标软件的测试结果,然后对各个终端设备对应的目标软件的测试结果进行分析,生成各个终端设备对应的子目标软件测试报告,保证了生成的各个终端设备对应的子目标软件测试报告的准确性。将各个终端设备对应的子目标软件测试报告进行拼接聚合处理,生成总目标软件测试报告,并显示总目标软件测试报告,保证了生成的总目标软件测试报告的准确性,且保证了用户可以更加直观地获取总目标软件测试报告。
39.根据第二方面,本发明实施例还提供了一种软件测试装置,包括:
40.第一获取模块,用于获取与电子设备连接的至少一个终端设备,并控制各个终端设备打开目标软件;
41.第一发送模块,用于向各个终端设备发送针对目标软件的操作指令,并接收各个终端设备返回的指令操作结果;
42.第二获取模块,用于获取各个终端设备对应的当前界面信息;
43.第一确定模块,用于对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果。
44.本发明实施例提供的软件测试装置,获取与电子设备连接的至少一个终端设备,表明了电子设备可以同时连接多个电子设备,从而对多个终端设备中的目标软件进行测试。然后,电子设备控制各个终端设备打开目标软件,向各个终端设备发送针对目标软件的操作指令,使得各个终端设备可以接收到电子设备发送的操作指令,并基于接收到的操作指令进行操作。然后,电子设备接收各个终端设备返回的指令操作结果,然后获取各个终端设备对应的当前界面信息。电子设备对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果,保证了确定的目标软件的测试结果的准确性。
上述软件测试装置,不需要测试人员对各个终端设备上的目标软件进行测试,因此提高了软件测试的效率,节省了大量的人力物力财力,实现了自动化对目标软件进行兼容性测试及正常的业务流程测试。
45.根据第三方面,本发明实施例提供了一种电子设备,包括存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行第一方面或者第一方面的任意一种实施方式中的软件测试方法。
46.根据第四方面,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质存储计算机指令,计算机指令用于使计算机执行第一方面或者第一方面的任意一种实施方式中的软件测试方法。
附图说明
47.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
48.图1是应用本发明实施例提供的软件测试方法的流程图;
49.图2是应用本发明另一实施例提供的软件测试方法的流程图;
50.图3是应用本发明另一实施例提供的软件测试方法的流程图;
51.图4是应用本发明另一实施例提供的智能设备控制平台的示意图;
52.图5是应用本发明实施例提供的软件测试装置的功能模块图;
53.图6是应用本发明实施例提供的软件测试装置的功能模块图;
54.图7是应用本发明实施例提供的软件测试装置的功能模块图;
55.图8是应用本发明实施例提供的软件测试装置的功能模块图;
56.图9是应用本发明实施例提供的电子设备的硬件结构示意图。
具体实施方式
57.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
58.需要说明的是,本技术实施例提供的软件测试的方法,其执行主体可以是软件测试的装置,该软件测试的装置可以通过软件、硬件或者软硬件结合的方式实现成为电子设备的部分或者全部,其中,该电子设备可以是服务器或者终端,其中,本技术实施例中的服务器可以为一台服务器,也可以为由多台服务器组成的服务器集群,本技术实施例中的终端可以是智能手机、个人电脑、平板电脑、可穿戴设备以及智能机器人等其他智能硬件设备。下述方法实施例中,均以执行主体是电子设备为例来进行说明。
59.在本技术一个实施例中,如图1所示,提供了一种软件测试方法,以该方法应用于电子设备为例进行说明,包括以下步骤:
60.s11、获取与电子设备连接的至少一个终端设备,并控制各个终端设备打开目标软
件。
61.在本技术一种可选的实施方式中,电子设备可以基于局域网与各个终端设备连接,因此,电子设备可以以广播的形式向各个终端设备发送响应信息,在接收到各个终端设备基于接收到的响应信息返回的反馈信息之后,电子设备确定与电子设备连接的至少一个终端设备。
62.在本技术另一种可选的实施方式中,电子设备可以基于连接线与各个终端设备连接,然后基于连接线向各个终端设备发送响应信息,在接收到各个终端设备基于接收到的响应信息返回的反馈信息之后,电子设备确定与电子设备连接的至少一个终端设备。
63.在本技术一种可选的实施方式中,电子设备在确定了与电子设备连接的各个终端设备之后,控制各个终端设备打开目标软件之前,电子设备可以向各个终端设备发送检测是否安装目标软件的检测指令,终端设备在接收到检测指令之后,检测自身是否安装了目标软件。在终端设备未安装目标软件时,安装目标软件;在终端设备安装完成目标软件之后,电子设备可以基于adb命令控制各个终端设备打开目标软件。
64.其中,目标软件可以是终端设备中安装的应用程序,也可以是其他软件,本技术实施例对目标软件不做具体限定。
65.s12、向各个终端设备发送针对目标软件的操作指令,并接收各个终端设备返回的指令操作结果。
66.具体地,电子设备在确定各个终端设备均打开目标软件之后,电子设备可以基于与各个终端设备之间的连接关系向各个终端设备发送针对目标软件的操作指令。
67.其中,操作指令可以包括点击操作、滑动操作、读取和设置控件的属性操作、判断元素是否存在操作、拖动操作、检测部偏移和外部偏移操作以及事件等待操作等。本技术实施例对电子设备可以向各个终端设备发送针对目标软件的操作指令不做具体限定。
68.终端设备在接收到电子设备发送的针对目标软件的操作指令之后,可以根据操作指令完成相应的操作,并将指令操作结果发送给电子设备。因此,电子设备可以接收各个终端设备返回的指令操作结果。
69.s13、获取各个终端设备对应的当前界面信息。
70.具体地,电子设备在接收到各个终端设备返回的指令操作结果之后,电子设备可以基于与各个终端设备之间的连接,获取各个终端设备对应的目标软件的当前界面信息。
71.s14、对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果。
72.具体地,电子设备在获取到各个终端设备对应的目标软件的当前界面信息之后,可以对当前界面信息进行分析,确定当前界面信息中包括的当前界面对应的标识信息以及当前界面中各个元素的位置、形状、颜色等属性信息。然后,电子设备根据识别到的当前界面信息对应的结果,判断终端设备返回的指令操作结果是否准确,并根据得到的指令操作结果,确定目标软件的测试结果。
73.示例性的,假设电子设备向终端设备发送的操作指令为向右滑动操作,终端设备在接收到操作指令之后,完成操作指令对应的操作,在操作指令完成之后,向电子设备返回指令操作结果。电子设备在接收到终端设备返回的指令操作结果之后,获取终端设备中目标软件对应的当前界面信息,然后对当前界面信息进行识别分析,确定当前界面信息是否
为电子设备完成操作指令后目标软件应该显示的界面,从而判断终端设备返回的指令操作结果是否准确,并根据得到的指令操作结果,确定目标软件的测试结果。
74.需要说明的是,上述实施例只是针对向右滑动操作进行举例,针对其他操作指令相同,本技术实施例不再进行赘述。
75.本发明实施例提供的软件测试方法,获取与电子设备连接的至少一个终端设备,表明了电子设备可以同时连接多个电子设备,从而对多个终端设备中的目标软件进行测试。然后,电子设备控制各个终端设备打开目标软件,向各个终端设备发送针对目标软件的操作指令,使得各个终端设备可以接收到电子设备发送的操作指令,并基于接收到的操作指令进行操作。然后,电子设备接收各个终端设备返回的指令操作结果,然后获取各个终端设备对应的当前界面信息。电子设备对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果,保证了确定的目标软件的测试结果的准确性。上述软件测试方法,不需要测试人员对各个终端设备上的目标软件进行测试,因此提高了软件测试的效率,节省了大量的人力物力财力,实现了自动化对目标软件进行兼容性测试及正常的业务流程测试。
76.在本技术一个实施例中,如图2所示,提供了一种软件测试方法,以该方法应用于电子设备为例进行说明,包括以下步骤:
77.s21、获取与电子设备连接的至少一个终端设备,并控制各个终端设备打开目标软件。
78.关于该步骤请参见图1对s11的介绍,在此不进行赘述。
79.s22、向各个终端设备发送针对目标软件的操作指令,并接收各个终端设备返回的指令操作结果。
80.关于该步骤请参见图1对s12的介绍,在此不进行赘述。
81.s23、向各个终端设备发送录屏指令。
82.其中,录屏指令用于指示各个终端设备在执行操作指令时进行屏幕录制以及屏幕截图。
83.具体地,电子设备在向各个终端设备发送针对目标软件的操作指令之后,电子设备可以再次基于与各个终端设备之间的连接,向各个终端设备发送录屏指令。
84.在本技术一种可选的实施方式中,电子设备还可以基于与终端设备之间的连接,同时向终端设备发送针对目标软件的操作指令以及录屏指令。
85.s24、接收终端设备发送的录屏视频以及截图图像。
86.具体地,各个终端设备在完成操作指令并对整个操作指令完成过程进行屏幕录制以及屏幕截图之后,将录屏视频以及截图图像发送至电子设备,从而使得电子设备可以接收到终端设备发送的录屏视频以及截图图像。
87.s25、获取各个终端设备对应的当前界面信息。
88.关于该步骤请参见图1对s13的介绍,在此不进行赘述。
89.s26、对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果。
90.在本技术一种可选的实施方式中,指令操作结果包括指令操作成功,上述s26“对当前界面信息进行分析,根据识别结果对指令操作结果进行验证”,可以包括如下步骤:
91.s261、获取当前界面信息对应的目标界面信息。
92.其中,目标界面信息用于表征终端设备成功完成操作指令后的界面信息。
93.可选的,在获取到当前界面信息之后,电子设备可以接收用户输入的当前界面信息对应的目标界面信息,也可以从自身的存储介质中查找并获取当前界面信息对应的目标界面信息。本技术实施例对电子设备获取当前界面信息对应的目标界面信息的方式不做具体限定。
94.s262、对当前界面信息进行分析,并将当前界面信息与目标界面信息进行对比。
95.具体地,在获取到当前界面信息以及当前界面信息对应的目标界面信息之后,电子设备可以分别对当前界面信息以及当前界面信息对应的目标界面信息进行分析,并将当前界面信息对应的标识信息以及目标界面对应的标识信息进行对比,将当前界面信息中包括的每一个元素与目标界面中包括的对应的元素进行对比。
96.s263、当当前界面信息与目标界面信息一致时,确定指令操作结果准确,并确定目标软件测试成功。
97.具体地,当终端设备发送的指令操作结果为指令操作成功,且电子设备确定当前界面信息与目标界面信息一致时,电子设备确定终端设备发送的指令操作结果准确,并确定该终端设备对应的目标软件测试结果为测试成功。
98.s264、当当前界面信息与目标界面信息不一致时,确定指令操作结果不准确,并确定目标软件测试失败。
99.具体地,当终端设备发送的指令操作结果为指令操作成功,且电子设备确定当前界面信息与目标界面信息不一致时,电子设备确定终端设备发送的指令操作结果不准确,并确定该终端设备对应的目标软件测试结果为测试失败。
100.在本技术一种可选的实施方式中,指令操作结果包括指令操作失败,因此,上述软件测试方法还包括如下步骤:
101.s265、当当前界面信息与目标界面信息一致时,确定指令操作结果不准确,并确定目标软件测试失败。
102.具体地,当终端设备发送的指令操作结果为指令操作失败,且电子设备确定当前界面信息与目标界面信息一致时,电子设备确定终端设备发送的指令操作结果不准确,并确定该终端设备对应的目标软件测试结果为测试失败。
103.s266、当当前界面信息与目标界面信息不一致时,确定指令操作结果准确,并确定目标软件测试失败。
104.具体地,当终端设备发送的指令操作结果为指令操作失败,且电子设备确定当前界面信息与目标界面信息不一致时,电子设备确定终端设备发送的指令操作结果准确,但确定该终端设备对应的目标软件测试结果为测试失败。
105.示例性的,假设电子设备向终端设备发送的操作指令为向右滑动操作,终端设备在接收到操作指令之后,完成操作指令对应的操作,在操作指令完成之后,向电子设备返回指令操作结果。电子设备在接收到终端设备返回的指令操作结果之后,获取终端设备中目标软件对应的当前界面信息,然后获取当前界面信息对应的目标界面信息,并对当前界面信息进行分析,将当前界面信息中包括的当前界面对应的标识信息以及当前界面中各个元素的位置、形状、颜色等属性信息与目标界面信息中包括的目标界面对应的标识信息以及
目标界面中各个元素的位置、形状、颜色等属性信息进行对比。
106.当终端设备返回的指令操作结果为指令操作成功时,当电子设备确定当前界面信息与目标界面信息一致时,电子设备确定终端设备返回的指令操作结果准确,并确定目标软件测试成功。当电子设备确定当前界面信息与目标界面信息不一致时,电子设备确定终端设备返回的指令操作结果不准确,并确定目标软件测试失败。
107.当终端设备返回的指令操作结果为指令操作失败时,当电子设备确定当前界面信息与目标界面信息一致时,电子设备确定终端设备返回的指令操作结果不准确,并确定目标软件测试失败。当电子设备确定当前界面信息与目标界面信息不一致时,电子设备确定终端设备返回的指令操作结果不准确,并确定目标软件测试失败。
108.需要说明的是,上述实施例只是针对向右滑动操作进行举例,针对其他操作指令相同,本技术实施例不再进行赘述。
109.在本技术一种可选的实施方式中,在确定目标软件测试失败之后,上述软件测试方法,还包括以下步骤:
110.s27、对录屏视频以及截图图像进行识别。
111.具体地,电子设备在确定终端设备对应的目标软件测试失败之后,电子设备可以获取终端设备对应的录屏视频以及截图图像。然后,电子设备可以利用图像识别技术或者深度学习技术对录屏视频以及截图图像进行识别。
112.s28、根据识别结果,确定各个终端设备完成操作指令的全过程。
113.具体地,电子设备在对录屏视频以及截图图像进行识别之后,可以根据识别结果,确定各个终端设备完成操作指令的全过程。
114.s29、对全过程进行分析,确定目标软件测试失败的原因。
115.在本技术一种可选的实施方式中,上述s29“对全过程进行分析,确定目标软件测试失败的原因”,可以包括如下步骤:
116.s291、对全过程进行分析,确定终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息。
117.具体地,电子设备在确定各个终端设备完成操作指令的全过程之后,电子设备可以对终端设备完成操作指令的全过程进行分析,确定终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息。其中,界面特征可以用于保证界面的标识信息,界面要素属性信息可以包括界面中各个元素对应的属性信息。
118.s292、对界面特征、运行时间以及界面要素属性信息进行分析,确定目标软件测试失败的原因。
119.具体地,电子设备在确定了终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息之后,可以对对界面特征、运行时间以及界面要素属性信息进行分析,确定目标软件测试失败的原因。
120.本发明实施例提供的软件测试方法,获取当前界面信息对应的目标界面信息,保证了获取到的当前界面信息对应的目标界面信息的准确性。然后,对当前界面信息进行分析,并将当前界面信息与目标界面信息进行对比,保证了得到的当前界面信息与目标界面信息的对比结果的准确性。当当前界面信息与目标界面信息一致时,确定指令操作结果准确,并确定目标软件测试成功;当当前界面信息与目标界面信息一致时,确定指令操作结果
不准确,并确定目标软件测试失败,保证了得到的目标软件的测试结果的准确性。当当前界面信息与目标界面信息一致时,确定指令操作结果不准确,并确定目标软件测试失败;当当前界面信息与目标界面信息一致时,确定指令操作结果准确,并确定目标软件测试失败,保证了确定的目标软件对应的测试结果的准确性。
121.此外,在向各个终端设备发送针对目标软件的操作指令之后,电子设备可以向各个终端设备发送录屏指令,录屏指令用于指示各个终端设备在执行操作指令时进行屏幕录制以及屏幕截图,接收终端设备发送的录屏视频以及截图图像,保证了电子设备可以根据录屏视频以及截图图像对终端设备完成操作指令的过程进行追溯。
122.此外,在确定目标软件测试失败之后,电子设备可以对录屏视频以及截图图像进行识别,根据识别结果,确定各个终端设备完成操作指令的全过程,保证了确定的各个终端设备完成操作指令的全过程的准确性。对全过程进行分析,确定终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息,保证了确定的终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息的准确性。然后,对界面特征、运行时间以及界面要素属性信息进行分析,确定目标软件测试失败的原因,保证了确定的目标软件测试失败的原因的准确性。
123.在本技术一个实施例中,如图3所示,提供了一种软件测试方法,以该方法应用于电子设备为例进行说明,包括以下步骤:
124.s31、获取与电子设备连接的至少一个终端设备,并控制各个终端设备打开目标软件。
125.关于该步骤请参见图2中对s21的介绍,在此不进行赘述。
126.s32、向各个终端设备发送针对目标软件的操作指令,并接收各个终端设备返回的指令操作结果。
127.关于该步骤请参见图2中对s22的介绍,在此不进行赘述。
128.s33、获取各个终端设备对应的当前界面信息。
129.关于该步骤请参见图2中对s25的介绍,在此不进行赘述。
130.s34、对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果。
131.关于该步骤请参见图2中对s26的介绍,在此不进行赘述。
132.s35、获取各个终端设备对应的目标软件的测试结果。
133.具体地,电子设备在确定目标软件的测试结果之后,电子设备可以获取各个终端设备对应的目标软件的测试结果。
134.s36、对各个终端设备对应的目标软件的测试结果进行分析,生成各个终端设备对应的子目标软件测试报告。
135.具体地,电子设备在获取到各个终端设备对应的目标软件的测试结果之后,电子设备可以对对各个终端设备对应的目标软件的测试结果进行分析,生成各个终端设备对应的子目标软件测试报告。
136.s37、将各个终端设备对应的子目标软件测试报告进行拼接聚合处理,生成总目标软件测试报告,并显示总目标软件测试报告。
137.具体地,电子设备在生成各个终端设备对应的子目标软件测试报告之后,电子设
备可以将各个终端设备对应的子目标软件测试报告进行拼接聚合处理,生成总目标软件测试报告,并显示总目标软件测试报告。
138.示例性的,假设电子设备与10个终端设备连接,因此,可以生成10个子目标软件测试报告,电子设备可以将10个子目标软件测试报告拼接聚合,生成总目标软件测试报告,该总目标软件测试报告中包括10个子目标软件测试报告。电子设备可以将总目标软件测试报告通过显示设备显示给用户,并可以接收用户输入的报告显示指令,显示总目标软件测试报告中的至少一个子目标软件测试报告中的具体报告内容。
139.本发明实施例提供的软件测试方法,获取各个终端设备对应的目标软件的测试结果,然后对各个终端设备对应的目标软件的测试结果进行分析,生成各个终端设备对应的子目标软件测试报告,保证了生成的各个终端设备对应的子目标软件测试报告的准确性。将各个终端设备对应的子目标软件测试报告进行拼接聚合处理,生成总目标软件测试报告,并显示总目标软件测试报告,保证了生成的总目标软件测试报告的准确性,且保证了用户可以更加直观地获取总目标软件测试报告。
140.为了更好地介绍本技术实施例提供的软件测试方法,如图4所示,本技术实施例提供了一种智能设备控制平台。该智能设备控制平台包括平台搭建、脚本编写、智能分析、集群管理以及集群建设。其中,平台搭建用于生成自动化测试方案,包括定时测试任务、回归测试任务、设备兼容性测试任务;脚本编写用于资源统一管理,包括应用包、测试脚本、测试用例、账号、设备资源;智能分析用于对自动化报告进行分析,包括报告概括、性能报告、错误报告、录屏、脚本日志;集群管理用于devicekeeper,包括集群管理、远程维护、批量控制、智能控电、远程真机;集群建设用于真机集群建设,包括安卓真机集群建设和ios真机集群建设。
141.应该理解的是,虽然图1-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
142.如图5所示,本实施例提供一种软件测试装置,包括:
143.第一获取模块41,用于获取与电子设备连接的至少一个终端设备,并控制各个终端设备打开目标软件;
144.第一发送模块42,用于向各个终端设备发送针对目标软件的操作指令,并接收各个终端设备返回的指令操作结果;
145.第二获取模块43,用于获取各个终端设备对应的当前界面信息;
146.第一确定模块44,用于对当前界面信息进行分析,根据识别结果对指令操作结果进行验证,以确定目标软件的测试结果。
147.在本技术一个实施例中,指令操作结果包括指令操作成功,上述第一确定模块44,具体用于获取当前界面信息对应的目标界面信息;目标界面信息用于表征终端设备成功完成操作指令后的界面信息;对当前界面信息进行分析,并将当前界面信息与目标界面信息进行对比;当当前界面信息与目标界面信息一致时,确定指令操作结果准确,并确定目标软
件测试成功;当当前界面信息与目标界面信息不一致时,确定指令操作结果不准确,并确定目标软件测试失败。
148.在本技术一个实施例中,指令操作结果包括指令操作失败,上述第一确定模块44,具体用于当当前界面信息与目标界面信息一致时,确定指令操作结果不准确,并确定目标软件测试失败;当当前界面信息与目标界面信息不一致时,确定指令操作结果准确,并确定目标软件测试失败。
149.如图6所示,在本技术一个实施例中,上述软件测试装置,还包括:
150.第二发送模块45,用于向各个终端设备发送录屏指令,录屏指令用于指示各个终端设备在执行操作指令时进行屏幕录制以及屏幕截图;
151.接收模块46,用于接收终端设备发送的录屏视频以及截图图像。
152.如图7所示,在本技术一个实施例中,上述软件测试装置,还包括:
153.识别模块47,用于对录屏视频以及截图图像进行识别;
154.第二确定模块48,用于根据识别结果,确定各个终端设备完成操作指令的全过程;
155.第三确定模块49,用于对全过程进行分析,确定目标软件测试失败的原因。
156.在本技术一个实施例中,上述第三确定模块49,具体用于对全过程进行分析,确定终端设备在执行操作指令时的每一步对应的界面特征、运行时间以及界面要素属性信息;对界面特征、运行时间以及界面要素属性信息进行分析,确定目标软件测试失败的原因。
157.如图8所示,在本技术一个实施例中,上述软件测试装置,还包括:
158.第三获取模块410,用于获取各个终端设备对应的目标软件的测试结果;
159.生成模块411,用于对各个终端设备对应的目标软件的测试结果进行分析,生成各个终端设备对应的子目标软件测试报告;
160.显示模块412,用于将各个终端设备对应的子目标软件测试报告进行拼接聚合处理,生成总目标软件测试报告,并显示总目标软件测试报告。
161.关于软件测试装置的具体限定以及有益效果可以参见上文中对于软件测试方法的限定,在此不再赘述。上述软件测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于电子设备中的处理器中,也可以以软件形式存储于电子设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
162.本发明实施例还提供一种电子设备,具有上述图5-图8所示的软件测试装置。
163.如图9所示,图9是本发明可选实施例提供的一种电子设备的结构示意图,如图9所示,该电子设备可以包括:至少一个处理器51,例如cpu(central processing unit,中央处理器),至少一个通信接口53,存储器54,至少一个通信总线52。其中,通信总线52用于实现这些组件之间的连接通信。其中,通信接口53可以包括显示屏(display)、键盘(keyboard),可选通信接口53还可以包括标准的有线接口、无线接口。存储器54可以是高速ram存储器(random access memory,易挥发性随机存取存储器),也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器54可选的还可以是至少一个位于远离前述处理器51的存储装置。其中处理器51可以结合图5、图6、图7以及图8所描述的装置,存储器54中存储应用程序,且处理器51调用存储器54中存储的程序代码,以用于执行上述任一方法步骤。
164.其中,通信总线52可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。通信总线52可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
165.其中,存储器54可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:ram);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:hdd)或固态硬盘(英文:solid-state drive,缩写:ssd);存储器54还可以包括上述种类的存储器的组合。
166.其中,处理器51可以是中央处理器(英文:central processing unit,缩写:cpu),网络处理器(英文:network processor,缩写:np)或者cpu和np的组合。
167.其中,处理器51还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:asic),可编程逻辑器件(英文:programmable logic device,缩写:pld)或其组合。上述pld可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:cpld),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:fpga),通用阵列逻辑(英文:generic array logic,缩写:gal)或其任意组合。
168.可选地,存储器54还用于存储程序指令。处理器51可以调用程序指令,实现如本技术图1至3实施例中所示的软件测试方法。
169.本发明实施例还提供了一种非暂态计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的软件测试方法。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(random access memory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
170.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献