System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于JMeter的OpenAPI接口测试方法和系统、设备及介质技术方案_技高网

基于JMeter的OpenAPI接口测试方法和系统、设备及介质技术方案

技术编号:40904385 阅读:4 留言:0更新日期:2024-04-18 14:35
本发明专利技术公开了基于JMeter的OpenAPI接口测试方法和系统、设备及介质,包括:确定待测试OpenAPI接口的网关鉴权规则,根据网关鉴权规则生成鉴权代码文件包;在JMeter中加载鉴权代码文件包,并通过BeanShell预处理程序调用鉴权代码文件包生成网关鉴权参数;根据网关鉴权参数生成OpenAPI接口测试请求,并将OpenAPI接口测试请求发送至待测试OpenAPI接口;根据网关鉴权参数对OpenAPI接口测试请求进行验证,当验证通过,响应OpenAPI接口测试请求并生成测试结果。本发明专利技术降低了OpenAPI接口测试的人力成本,提高了OpenAPI接口测试的效率,可应用于接口测试技术领域。

【技术实现步骤摘要】

本专利技术涉及接口测试,尤其是一种基于jmeter的openapi接口测试方法和系统、设备及介质。


技术介绍

1、对于注册发布到统一api网关上的服务,外部应用或外部客户应用调用的时候,需要在请求时遵循网关的签名认证机制,构建响应的请求头进行服务调用。网关的签名规则是调用java代码模块中的方法实现。现有技术中,在jmeter的openapi接口测试过程中需要引入该签名规则,大多通过beanshell脚本中的java代码实现,需要测试人员对网关签名规则有充分的了解,对测试人员编写java代码能力要求也比较高,同时人工编写java代码用于openapi接口测试需要耗费一定的人力成本,也影响了openapi接口测试的效率。


技术实现思路

1、本专利技术的目的在于至少一定程度上解决现有技术中存在的技术问题之一。

2、为此,本专利技术实施例的一个目的在于提供一种基于jmeter的openapi接口测试方法,该方法降低了openapi接口测试的人力成本,提高了openapi接口测试的效率。

3、本专利技术实施例的另一个目的在于提供一种基于jmeter的openapi接口测试系统。

4、为了达到上述技术目的,本专利技术实施例所采取的技术方案包括:

5、一方面,本专利技术实施例提供了一种基于jmeter的openapi接口测试方法,包括以下步骤:

6、确定待测试openapi接口的网关鉴权规则,根据所述网关鉴权规则生成鉴权代码文件包;</p>

7、在jmeter中加载所述鉴权代码文件包,并通过beanshell预处理程序调用所述鉴权代码文件包生成网关鉴权参数;

8、根据所述网关鉴权参数生成openapi接口测试请求,并将所述openapi接口测试请求发送至所述待测试openapi接口;

9、根据所述网关鉴权参数对所述openapi接口测试请求进行验证,当验证通过,响应所述openapi接口测试请求并生成测试结果。

10、进一步地,在本专利技术的一个实施例中,所述确定待测试openapi接口的网关鉴权规则,根据所述网关鉴权规则生成鉴权代码文件包这一步骤,其具体包括:

11、获取所述待测试openapi接口的接口调用文档,根据所述接口调用文档确定所述网关鉴权规则;

12、根据所述网关鉴权规则编写网关鉴权代码,并对所述网关鉴权代码进行调试、修改以及编译;

13、对编译后的所述网关鉴权代码进行打包处理,生成所述鉴权代码文件包。

14、进一步地,在本专利技术的一个实施例中,所述在jmeter中加载所述鉴权代码文件包这一步骤,其具体包括:

15、将所述鉴权代码文件包存储至jmeter的扩展类库目录下;

16、通过jmeter创建测试计划项目,并在所述测试计划项目中添加所述鉴权代码文件包。

17、进一步地,在本专利技术的一个实施例中,所述通过beanshell预处理程序调用所述鉴权代码文件包生成网关鉴权参数这一步骤,其具体包括:

18、在所述测试计划项目中添加线程组,在所述线程组下添加测试请求,并确定所述测试请求的请求参数;

19、在所述测试请求下添加beanshell预处理程序作为前置处理器;

20、通过所述beanshell预处理程序调用所述鉴权代码文件包,并根据所述请求参数生成所述网关鉴权参数。

21、进一步地,在本专利技术的一个实施例中,所述根据所述网关鉴权参数生成openapi接口测试请求这一步骤,其具体包括:

22、将所述网关鉴权参数回填到所述测试请求中;

23、确定所述测试请求的请求协议、请求方式、端口号、请求路径以及内容编码,生成所述openapi接口测试请求。

24、进一步地,在本专利技术的一个实施例中,所述根据所述网关鉴权参数对所述openapi接口测试请求进行验证,当验证通过,响应所述openapi接口测试请求并生成测试结果这一步骤,其具体包括:

25、通过所述待测试openapi接口的接口网关对所述网关鉴权参数进行校验,确定所述openapi接口测试请求的请求方法和请求参数是否正确;

26、当所述请求方法和所述请求参数均正确,确定所述openapi接口测试请求验证通过;

27、根据所述openapi接口测试请求对所述待测试openapi接口进行接口测试,生成测试结果。

28、进一步地,在本专利技术的一个实施例中,所述基于jmeter的openapi接口测试方法还包括以下步骤:

29、当所述请求方法和/或所述请求参数不正确,确定所述openapi接口测试请求验证不通过,不响应所述openapi接口测试请求并返回验证失败信息。

30、另一方面,本专利技术实施例提供了一种基于jmeter的openapi接口测试系统,包括:

31、鉴权代码文件包生成模块,用于确定待测试openapi接口的网关鉴权规则,根据所述网关鉴权规则生成鉴权代码文件包;

32、网关鉴权参数生成模块,用于在jmeter中加载所述鉴权代码文件包,并通过beanshell预处理程序调用所述鉴权代码文件包生成网关鉴权参数;

33、测试请求生成模块,用于根据所述网关鉴权参数生成openapi接口测试请求,并将所述openapi接口测试请求发送至所述待测试openapi接口;

34、测试请求响应模块,用于根据所述网关鉴权参数对所述openapi接口测试请求进行验证,当验证通过,响应所述openapi接口测试请求并生成测试结果。

35、另一方面,本专利技术实施例提供了一种电子设备,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器执行时实现如前面所述的基于jmeter的openapi接口测试方法。

36、另一方面,本专利技术实施例还提供了一种存储介质,所述存储介质为计算机可读存储介质,用于计算机可读存储,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如前面所述的基于jmeter的openapi接口测试方法。

37、本专利技术的优点和有益效果将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到:

38、本专利技术实施例确定待测试openapi接口的网关鉴权规则,根据网关鉴权规则生成鉴权代码文件包,然后在jmeter中加载鉴权代码文件包,并通过beanshell预处理程序调用鉴权代码文件包生成网关鉴权参数,再根据网关鉴权参数生成openapi接口测试请求,并将openapi接口测试请求发送至待测试openapi接口,进而根据网关鉴权参数对openapi接口测试请求进行验证,当验证通过,响应openapi接口测试请求并生成测试结果本文档来自技高网...

【技术保护点】

1.一种基于JMeter的OpenAPI接口测试方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于JMeter的OpenAPI接口测试方法,其特征在于,所述确定待测试OpenAPI接口的网关鉴权规则,根据所述网关鉴权规则生成鉴权代码文件包这一步骤,其具体包括:

3.根据权利要求2所述的一种基于JMeter的OpenAPI接口测试方法,其特征在于,所述在JMeter中加载所述鉴权代码文件包这一步骤,其具体包括:

4.根据权利要求3所述的一种基于JMeter的OpenAPI接口测试方法,其特征在于,所述通过BeanShell预处理程序调用所述鉴权代码文件包生成网关鉴权参数这一步骤,其具体包括:

5.根据权利要求4所述的一种基于JMeter的OpenAPI接口测试方法,其特征在于,所述根据所述网关鉴权参数生成OpenAPI接口测试请求这一步骤,其具体包括:

6.根据权利要求1至5中任一项所述的一种基于JMeter的OpenAPI接口测试方法,其特征在于,所述根据所述网关鉴权参数对所述OpenAPI接口测试请求进行验证,当验证通过,响应所述OpenAPI接口测试请求并生成测试结果这一步骤,其具体包括:

7.根据权利要求6所述的一种基于JMeter的OpenAPI接口测试方法,其特征在于,所述基于JMeter的OpenAPI接口测试方法还包括以下步骤:

8.一种基于JMeter的OpenAPI接口测试系统,其特征在于,包括:

9.一种电子设备,其特征在于,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器执行时实现如权利要求1至7中任一项所述的基于JMeter的OpenAPI接口测试方法的步骤。

10.一种存储介质,所述存储介质为计算机可读存储介质,用于计算机可读存储,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至7中任一项所述的基于JMeter的OpenAPI接口测试方法的步骤。

...

【技术特征摘要】

1.一种基于jmeter的openapi接口测试方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于jmeter的openapi接口测试方法,其特征在于,所述确定待测试openapi接口的网关鉴权规则,根据所述网关鉴权规则生成鉴权代码文件包这一步骤,其具体包括:

3.根据权利要求2所述的一种基于jmeter的openapi接口测试方法,其特征在于,所述在jmeter中加载所述鉴权代码文件包这一步骤,其具体包括:

4.根据权利要求3所述的一种基于jmeter的openapi接口测试方法,其特征在于,所述通过beanshell预处理程序调用所述鉴权代码文件包生成网关鉴权参数这一步骤,其具体包括:

5.根据权利要求4所述的一种基于jmeter的openapi接口测试方法,其特征在于,所述根据所述网关鉴权参数生成openapi接口测试请求这一步骤,其具体包括:

6.根据权利要求1至5中任一项所述的一种基于jmeter的openapi接口测试方法,其特征在于,所述根据所述网...

【专利技术属性】
技术研发人员:朱家安辛璟奋
申请(专利权)人:天翼物联科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1