本技术涉及测试,尤其涉及一种服务端测试方法、装置、设备及存储介质。
背景技术:
1、随着物联网技术的发展,要求一些为终端设备提供服务的服务端(例如针对物联网设备管理的平台即服务(platform as a service,pass)平台服务器等)支持jt/t 808协议,在设备厂商将服务端交付到客户处之前,需要设备厂商的技术人员对服务端进行jt/t808协议测试,以保证服务端的性能符合要求。
2、目前针对服务端进行jt/t 808协议测试时,技术人员手动地按照jt/t808协议规范和具体业务场景计算报文,并借助传输控制协议(transmission control protocol,tcp)客户端模拟终端设备将报文发送至服务端,待tcp客户端接收到服务端的响应消息后,技术人员对响应消息进行解码再进行下一业务操作。
3、但这样计算报文进行测试时,容易出现测试失败的情况。
技术实现思路
1、本技术提供一种服务端测试方法、装置、设备及存储介质,有助于降低服务端的jt/t 808协议测试失败率。
2、第一方面,本技术提供一种服务端测试方法,该方法包括:根据测试需求创建不同业务处理逻辑的jt/t 808协议取样器,结合java编码格式完成编码,将jt/t 808协议取样器所在的工程打包成jar包耦合到jmeter的框架中;
3、在jmeter中创建线程组,并根据测试场景在线程组中添加至少一个jt/t808协议取样器,生成脚本;
4、执行脚本,根据脚本中的各jt/t 808协议取样器的预设参数向服务端发送请求报文,并接收服务端发送的响应结果,根据测试场景断言响应结果。
5、在一种可能的实现方式中,将jt/t 808协议取样器所在的工程打包成jar包耦合到jmeter的框架中,包括:
6、将jt/t 808协议取样器所在的工程打包成jar包放置在jmeter的lib/ext目录下。
7、在一种可能的实现方式中,在根据各jt/t 808协议取样器的预设参数向服务端发送请求报文之前,方法包括:
8、通过脚本中的jt/t 808协议取样器提取jt/t 808协议取样器中的预设参数,并根据预设参数生成源报文,在源报文上加上报文头部、安全校验码和报文结尾的标识符,生成请求报文。
9、在一种可能的实现方式中,jar包中还包括协议配置管理器,协议配置管理器用于配置第一参数,第一参数用于客户端与服务端之间的连接控制;
10、根据测试场景在线程组中添加至少一个jt/t 808协议取样器,包括:
11、根据测试场景在线程组中添加协议配置管理器和至少一个jt/t 808协议取样器。
12、在一种可能的实现方式中,jmeter中包括并发控制器,在jmeter中创建线程组时,方法还包括:通过并发控制器设置线程组的并发线程数。
13、在一种可能的实现方式中,jt/t 808协议取样器包括下述任意至少一种:jt/t808协议注册取样器、jt/t 808协议鉴权取样器、jt/t 808协议心跳取样器、jt/t 808协议数据采集取样器、jt/t 808协议注销取样器。
14、在一种可能的实现方式中,jt/t 808协议注册取样器用于根据第一参数使得客户端与服务端通信连接;
15、jt/t 808协议注册取样器还用于根据jt/t 808协议将第二参数封装为注册报文,使得客户端向服务端发送注册报文,并接收服务端发送的注册响应报文,判断注册响应报文是否正确;
16、jt/t 808协议鉴权取样器用于根据jt/t 808协议将第三参数封装为鉴权报文,使得客户端向服务端发送鉴权报文,并接收服务端发送的鉴权响应报文,判断鉴权响应报文是否正确;
17、jt/t 808协议数据采集取样器用于根据jt/t 808协议将第四参数封装为数据采集报文,使得客户端向服务端发送数据采集报文,并接收服务端发送的数据采集响应报文,判断数据采集响应报文是否正确;
18、jt/t 808协议心跳取样器用于根据jt/t 808协议将第五参数封装为保活报文,使得客户端定期向服务端发送保活报文,以使客户端和服务端之间的通信链路保持活跃;
19、jt/t 808协议注销取样器用于根据jt/t 808协议将第六参数封装为注销报文,使得客户端向服务端发送注销报文。
20、第二方面,本技术提供一种服务端测试装置,服务端支持jt/t 808协议,该装置包括创建模块,添加模块和执行模块,其中,
21、创建模块,用于根据测试需求创建不同业务处理逻辑的jt/t 808协议取样器,结合java编码格式完成编码,将jt/t 808协议取样器所在的工程打包成jar包耦合到jmeter的框架中;
22、添加模块,在jmeter中创建线程组,并根据测试场景在线程组中添加至少一个jt/t 808协议取样器,生成脚本;
23、执行模块,用于执行脚本,根据脚本中的各jt/t 808协议取样器的预设参数向服务端发送请求报文,并接收服务端发送的响应结果,根据测试场景断言响应结果。
24、在一种可能的实现方式中,创建模块,具体用于:
25、将jt/t 808协议取样器所在的工程打包成jar包放置在jmeter的lib/ext目录下。
26、在一种可能的实现方式中,在根据各jt/t 808协议取样器的预设参数向服务端发送请求报文之前,装置还包括:
27、生成模块,用于通过脚本中的jt/t 808协议取样器提取jt/t 808协议取样器中的预设参数,并根据预设参数生成源报文,在源报文上加上报文头部、安全校验码和报文结尾的标识符,生成请求报文。
28、在一种可能的实现方式中,jar包中还包括协议配置管理器,协议配置管理器用于配置第一参数,第一参数用于客户端与服务端之间的连接控制;
29、添加模块,具体用于:根据测试场景在线程组中添加协议配置管理器和至少一个jt/t 808协议取样器。
30、在一种可能的实现方式中,jmeter中包括并发控制器,在jmeter中创建线程组时,装置还包括:
31、设置模块,用于通过并发控制器设置线程组的并发线程数。
32、在一种可能的实现方式中,jt/t 808协议取样器包括下述任意至少一种:jt/t808协议注册取样器、jt/t 808协议鉴权取样器、jt/t 808协议心跳取样器、jt/t 808协议数据采集取样器、jt/t 808协议注销取样器。
33、在一种可能的实现方式中,jt/t 808协议注册取样器用于根据第一参数使得客户端与服务端通信连接;
34、jt/t 808协议注册取样器还用于根据jt/t 808协议将第二参数封装为注册报文,使得客户端向服务端发送注册报文,并接收服务端发送的注册响应报文,判断注册响应报文是否正确;
35、jt/t 808协议鉴权取样器用于根据jt/t 808协议将第三参数封装为鉴权报文,使得客户端向服务端发送鉴权报文,并接收服务端发送的鉴权响应报文,判断鉴权响应报文是否正确;
36、jt/t 808协议数据采集取样器用于根据jt/t 808协议将第四参数封装为数据采集报文,使得客户端向服务端发送数据采集报文,并接收服务端发送的数据采集响应报文,判断数据采集响应报文是否正确;
37、jt/t 808协议心跳取样器用于根据jt/t 808协议将第五参数封装为保活报文,使得客户端定期向服务端发送保活报文,以使客户端和服务端之间的通信链路保持活跃;
38、jt/t 808协议注销取样器用于根据jt/t 808协议将第六参数封装为注销报文,使得客户端向服务端发送注销报文。
39、第三方面,本技术提供一种电子设备,包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得处理器执行如第一方面或第一方面的任一种可能的实现方式中描述的服务端测试方法。
40、第四方面,本技术提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,当计算机执行指令被处理器执行时用于实现如第一方面或第一方面的任一种可能的实现方式中描述的服务端测试方法。
41、第五方面,本技术提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,实现如第一方面或第一方面的任一种可能的实现方式中描述的服务端测试方法。
42、本技术实施例中,根据测试需求创建不同业务处理逻辑的jt/t 808协议取样器,结合java编码格式完成编码,将jt/t 808协议取样器所在的工程打包成jar包耦合到jmeter的框架中;在jmeter中创建线程组,并根据测试场景在线程组中添加至少一个jt/t808协议取样器,生成脚本;执行脚本,根据脚本中的各jt/t 808协议取样器的预设参数向服务端发送请求报文,并接收服务端发送的响应结果,根据测试场景断言响应结果。这样自动化实现的测试过程既提高了测试效率,也减小了报文出错的概率,从而降低了测试失败率。此外,由于将jt/t 808协议取样器所在的工程打包成jar包耦合到了jmeter的框架中,测试时通过jt/t 808协议取样器计算报文,而不用人工计算,降低了技术门槛,有利于节约人力成本。