本公开涉及基于光通信的测试,具体涉及一种测试方法、装置、设备和存储介质。
背景技术:
1、在应用软件开发的过程中,往往需要大量的测试数据来对应用软件进行测试,从而判断应用软件的性能是否达标。在通过测试数据对应用软件进行测试时,需要将用于采集测试数据的仪表设备与应用软件连接,进而从仪表设备中获取测试数据。
2、然而,由于各种仪表设备的差异性较大,例如,各种仪表设备的通信接口均不同,因此应用软件需要适应各种设备驱动,并处理符合各种不同接口协议的测试数据,数据处理过程复杂,导致应用软件的测试效率较低。
技术实现思路
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、在一些实施例中,所述获取模块配置为:
61、所述目标服务层基于所述数据获取请求携带的请求内容,确定所述目标仪表设备的目标设备标识;
62、所述目标服务层从备用设备线程中,确定与所述目标设备标识对应的目标设备线程;
63、所述目标服务层在所述目标设备线程中,调用所述接口函数得到调用结果,并从所述调用结果中获取所述初始测试数据。
64、在一些实施例中,所述装置还可以包括:
65、第二确定模块,配置为所述目标服务层在接收到来自所述应用层的应用请求的情况下,确定所述应用请求的请求类型;
66、执行模块,配置为在所述请求类型指示所述应用请求为携带有备用设备标识的线程管理请求的情况下,通过设备主线程执行所述线程管理请求,创建与各个所述备用设备标识对应的备用设备线程或者注销与各个所述备用设备标识对应的备用设备线程。
67、在一些实施例中,所述获取模块配置为:
68、在所述请求类型指示所述应用请求为所述数据获取请求的情况下,通过所述设备主线程执行所述数据获取请求,确定与所述目标设备标识相匹配的备用设备标识,并将与所述目标设备标识相匹配的备用设备标识所对应的备用设备线程,确定为所述目标设备线程。
69、第三方面,本公开实施例提供一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面所述的任一种方法中的步骤。
70、第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的任一种方法中的步骤。
71、在本公开中,位于应用层的待测试应用基于目标仪表设备的设备类型,从候选服务层中确定目标服务层;待测试应用向目标服务层,发送数据获取请求;目标服务层基于数据获取请求,获取与目标仪表设备对应的初始测试数据;目标服务层将初始测试数据,转换为符合标准接口协议的标准测试数据;目标服务层将标准测试数据,发送至应用层;应用层基于标准测试数据对待测试应用进行测试,得到测试结果。
72、在本公开中,待测试应用可以不直接与设备层的仪表设备进行通信,而是通过服务层与设备层的仪表设备进行通信,且服务层可以将符合不同初始接口协议的初始测试数据统一为标准测试数据,因此应用层只需处理符合标准接口协议的标准测试数据,进而可以提高数据处理效率和应用测试的测试效率。
1.一种测试方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述候选服务层为至少一个,所述位于应用层的待测试应用基于目标仪表设备的设备类型,从候选服务层中确定目标服务层,包括:
3.根据权利要求1所述的方法,其特征在于,所述目标服务层基于所述数据获取请求,获取与所述目标仪表设备对应的初始测试数据,包括:
4.根据权利要求1所述的方法,其特征在于,所述目标服务层将所述初始测试数据,转换为符合标准接口协议的标准测试数据,包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述目标服务层基于所述数据获取请求,获取与所述目标仪表设备对应的初始测试数据,包括:
7.根据权利要求6所述的方法,其特征在于,所述目标服务层调用所述接口函数得到调用结果,并从所述调用结果中获取所述初始测试数据,包括:
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
9.根据权利要求8所述的方法,其特征在于,所述目标服务层从备用设备线程中,确定与所述目标设备标识对应的目标设备线程,包括:
10.一种测试装置,其特征在于,所述装置包括:
11.一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至9任一项所述方法中的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9任一项所述方法中的步骤。
