本技术实施例涉及软件测试,尤其涉及一种测试用例的测试方法、装置、系统和电子设备。
背景技术:
1、目前,软件测试已经成为软件开发中的一个非常重要的内容。软件测试可以用于评估和验证软件产品或应用程序的质量、功能、性能等是否满足规定的需求和预期。软件测试可以分为手动测试和自动化测试。手动测试依赖于测试人员的经验和技能,而自动化测试则使用特定的工具来自动执行测试用例。随着技术的发展,自动化测试变得越来越普遍,它可以提高测试效率并确保测试的一致性和重复性。
2、相关技术中,可以在多个已经部署好待测试软件的不同类型的云平台上运行测试用例以对软件进行测试,得到测试用例对应的测试结果。
3、但是上述方法中,由于云平台之间存在差异,得到测试结果的时间往往存在区别,且测试结果的语言类型较多,难以管理,导致通过多个云平台对测试用例进行测试时效率较差。
技术实现思路
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、数据转换子模块,用于基于各个所述第三云平台的平台类型对各个所述第三云平台对应的第一测试结果进行数据转换,得到与所述服务端兼容的第一转换结果;
49、存储子模块,用于存储所述第一测试用例、所述第一转换结果和各个所述第三云平台之间的对应关系。
50、第四方面,本技术实施例提供一种测试用例的测试装置,应用于云平台,所述装置包括:
51、接收模块,用于接收服务端的应用程序编程接口发送的第一测试用例;其中,所述第一测试用例由所述服务端响应于针对所述第一测试用例的第一测试指令,基于所述第一测试用例的分发策略,采用所述应用程序编程接口发送;
52、执行模块,用于执行所述第一测试用例,得到所述第一测试用例的第一测试结果;
53、发送模块,用于基于所述应用程序编程接口将所述第一测试结果发送至所述服务端,以使所述服务端存储所述第一测试用例、所述第一测试结果和所述云平台之间的对应关系。
54、第五方面,本技术实施例提供一种测试用例的测试系统,所述系统包括:
55、服务端,用于响应于针对第一测试用例的第一测试指令,基于所述第一测试用例对应的第一分发策略,从所述服务端连接的各个第一云平台中确定所述第一分发策略对应的多个第二云平台;获取各个所述第二云平台的执行节点分别对应的第一节点状态;从各个所述第二云平台中确定所述第一节点状态为空闲的第三云平台;基于所述第一测试用例的分发策略,采用各个所述第三云平台分别对应的应用程序编程接口将所述第一测试用例发送至各个所述第三云平台,以使各个所述第三云平台执行所述第一测试用例,得到所述第一测试用例的第一测试结果;接收各个所述第三云平台发送的所述第一测试结果,存储所述第一测试用例、所述第一测试结果和各个所述第三云平台之间的对应关系;其中,所述第一测试结果由各个所述第三云平台基于各个所述第三云平台分别对应的所述应用程序编程接口发送;
56、云平台,用于接收服务端的应用程序编程接口发送的第一测试用例;其中,所述第一测试用例由所述服务端响应于针对所述第一测试用例的第一测试指令,基于所述第一测试用例的分发策略,采用所述应用程序编程接口发送;执行所述第一测试用例,得到所述第一测试用例的第一测试结果;基于所述应用程序编程接口将所述第一测试结果发送至所述服务端,以使所述服务端存储所述第一测试用例、所述第一测试结果和所述云平台之间的对应关系。
57、第六方面,本技术实施例还提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上任一所述的测试用例的测试方法。
58、第七方面,本技术实施例还提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上任一所述的测试用例的测试方法。
59、在本技术实施例中,提供一种测试用例的测试方法,包括:响应于针对第一测试用例的第一测试指令,基于第一测试用例对应的第一分发策略,从服务端连接的各个第一云平台中确定第一分发策略对应的多个第二云平台;获取各个第二云平台的执行节点分别对应的第一节点状态;;从各个第二云平台中确定第一节点状态为空闲的第三云平台;基于第一测试用例的分发策略,采用各个第三云平台分别对应的应用程序编程接口将第一测试用例发送至各个第三云平台,以使各个第三云平台执行第一测试用例,得到第一测试用例的第一测试结果;接收各个第三云平台发送的第一测试结果,存储第一测试用例、第一测试结果和各个第三云平台之间的对应关系;其中,第一测试结果由各个第三云平台基于各个第三云平台分别对应的应用程序编程接口发送,能够通过服务端筛选测试用例适配的云平台并执行测试用例的测试过程,并对测试结果进行统一管理,一定程度上提升了测试用例的测试效率。
60、上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
1.一种测试用例的测试方法,其特征在于,应用于服务端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一测试用例的分发策略,采用各个所述第三云平台分别对应的应用程序编程接口将所述第一测试用例发送至各个所述第三云平台,包括:
4.根据权利要求3所述的方法,其特征在于,所述基于所述第二测试用例和所述第一测试用例之间的依赖关系将所述第一测试用例加入所述用例测试队列,包括:
5.根据权利要求1所述的方法,其特征在于,所述存储所述第一测试用例、所述第一测试结果和各个所述第三云平台之间的对应关系,包括:
6.一种测试用例的测试方法,其特征在于,应用于云平台,所述方法包括:
7.一种测试用例的测试装置,其特征在于,应用于服务端,所述装置包括:
8.一种测试用例的测试装置,其特征在于,应用于云平台,所述装置包括:
9.一种测试用例的测试系统,其特征在于,所述系统包括:
10.一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上任一所述的测试用例的测试方法。
