接口测试方法、装置及可读存储介质与流程

文档序号:36402016发布日期:2023-12-16 06:39阅读:27来源:国知局
接口测试方法与流程

本发明属于测试,特别涉及一种接口测试方法、装置及可读存储介质。


背景技术:

1、现有iot(物联网)系统基本都是接口测试,现在都是手工测试,引入接口自动化可以提前介入测试且测试快速高效,也方便回归;可更好的利用资源,具有一致性和可重复性的特点,自动化测试脚本完全可复用;提升了接口的可信度等,现有的接口测试的代码架构中,通常至少包括:testcase层(测试用例层)、api层(接口层)等,采用testcase层的测试用例直接调用api层内的接口路径、接口方法和请求函数等完成测试,接口数量繁多的项目中,为满足项目开发的测试变化,对代码修改工作复杂,难以管理。


技术实现思路

1、本发明要解决的技术问题是为了克服现有技术中的接口测试项目中,对代码修改工作复杂,难以管理的缺陷,提供一种接口测试方法、装置及可读存储介质。

2、本发明是通过下述技术方案来解决上述技术问题:

3、一种接口测试方法,所述接口测试方法基于一自动化框架实现,所述自动化框架包括testcase层(测试用例层)、service层(服务层)、api层(接口层)、common层(通用层);

4、所述接口测试方法包括以下步骤:

5、在所述testcase层通过预设的测试用例驱动接口服务,以调用所述service层;

6、在所述service层中调用所述api层的接口请求函数;

7、通过所述接口请求函数调用所述common层以设置所述接口的参数的加密方式、请求地址以及端口配置。

8、上述方案中,api层与service分离,使接口流程与用例的请求过程分开,接口流程可以为接口的路径、接口的认证方法、接口的调用方法等,即使重构也能方便后续维护,在api层编写项目对应的api请求方法,然后在service层通过调用api层对应的api请求方法来驱动对应的接口测试;在代码修改时,只需要修改api层,而不需要修改service层,方便管理和代码的修改,且在api上代码内容也比较好修改和管理。

9、较佳地,所述自动化框架还包括config层(配置层);

10、所述通过所述接口请求函数调用所述common层以设置所述接口的参数的加密方式、请求地址以及端口配置,具体包括:

11、通过所述接口请求函数调用所述common层的请求生成器;

12、通过所述common层的请求生成器调用所述config层以设置所述接口的参数的加密方式、所述请求地址以及所述端口配置;

13、其中,所述请求生成器用于接口请求设置和/或接口响应过滤设置。

14、上述方案中,common层用于封装公共方法类,包括接口请求设置以及接口响应过滤器的设置,以配置调用的配置文件,采用config层和common层的分层,使配置调用的配置文件与配置文件分层设置,方便管理和代码更新。

15、较佳地,所述自动化框架还包括resources层(资源层);

16、所述通过所述common层的请求生成器调用所述config层以设置所述接口的参数的加密方式、所述请求地址以及所述端口配置,具体包括:

17、在所述config层调用所述resources层;

18、通过所述resources层提供所需的配置环境,以使所述config层设置所述接口的参数的加密方式、所述请求地址以及所述端口配置;

19、其中,所述配置环境包括以下一种或几种:配置用例参数、设置环境的参数以及调用加密方法。

20、上述方案中,resources层用于用例参数、测试环境、加密方法等的配置环境的配置,以便于接口测试的自动化完成。

21、较佳地,所述在所述service层中调用所述api层的接口请求函数,还包括:

22、在所述service层中调用所述接口请求函数,以查询所述接口的输入参数;

23、在所述api层通过所述加密方式对所述输入参数进行加密处理。

24、上述方案中,在service层还完成对输入参数的加密处理,确保接口测试中数据的安全性。

25、较佳地,所述自动化框架还包括model层(函数层);

26、所述在所述service层中调用接口请求函数,以查询所述接口的输入参数,具体包括:

27、通过所述接口请求函数调用所述model层以查询所述接口的输入参数和/或基础参数。

28、上述方案中,model层用于获取不同接口请求的输入参数以及基础响应参数,参数的自动调用便于接口测试的自动化完成。

29、较佳地,所述输入参数包括以下一种或几种:密码、换电站的信息、电池仓信息、电池充电信息以及换电车辆信息;

30、和/或,所述测试用例至少包括测试所述输入参数的加密准确性。

31、上述方案中,通过对换电相关信息加密,提高换电系统中接口的参数的保密性。

32、较佳地,所述在所述testcase层通过预设的测试用例驱动接口服务,以调用所述service层,具体包括:

33、通过预设的测试用例给接口参数赋值后,以调用所述service层的对应第一方法。

34、上述方案中,通过预设的测试用例给接口参数赋值后,直接调用所述service层中的对应第一方法,比如调用querystationinfo方法来实现对换电站站点信息的查询的接口测试请求,亦可以调用其他的方法实现不同的接口测试需求。

35、较佳地,所述加密方式包括基于aes加密算法进行加密;

36、和/或,所述自动化框架基于restassured+junit5搭建。

37、一种接口测试装置,所述接口测试装置基于一自动化框架实现,所述自动化框架包括testcase层、service层、api层、common层,接口测试装置包括:

38、测试用例驱动模块,用于在所述testcase层通过预设的测试用例驱动接口服务,以调用所述service层;

39、接口请求调用模块,用于在所述service层中调用所述api层的接口请求函数;

40、配置模块,用于通过所述接口请求函数调用所述common层以设置所述接口的参数的加密方式、请求地址以及端口配置。

41、上述方案中,api层与service分离,使接口流程与用例的请求过程分开,接口流程可以为接口的路径、接口的认证方法、接口的调用方法等,即使重构也能方便后续维护,在api层编写项目对应的api请求方法,然后在service层通过调用api层对应的api请求方法来驱动对应的接口测试;在代码修改时,只需要修改api层,而不需要修改service层,方便管理和代码的修改,且在api上代码内容也比较好修改和管理。

42、较佳地,所述自动化框架还包括config层;

43、所述配置模块具体包括:

44、请求生成器调用单元,用于通过所述接口请求函数调用所述common层的请求生成器;

45、配置单元,用于通过所述common层的请求生成器调用所述config层以设置所述接口的参数的加密方式、所述请求地址以及所述端口配置;

46、其中,所述请求生成器用于接口请求设置和/或接口响应过滤设置。

47、上述方案中,common层用于封装公共方法类,包括接口请求设置以及接口响应过滤器的设置,以配置调用的配置文件,采用config层和common层的分层,使配置调用的配置文件与配置文件分层设置,方便管理和代码更新。

48、较佳地,所述自动化框架还包括resources层;

49、所述配置模块还包括:

50、resources层调用单元,用于在所述config层调用所述resources层;

51、所述配置单元用于通过所述resources层提供所需的配置环境,以使所述config层设置所述接口的参数的加密方式、所述请求地址以及所述端口配置;

52、其中,所述配置环境包括以下一种或几种:配置用例参数、设置环境的参数以及调用加密方法。

53、上述方案中,resources层用于用例参数、测试环境、加密方法等的配置环境的配置,以便于接口测试的自动化完成。

54、较佳地,所述自动化框架还包括model层;

55、所述接口请求调用模块具体用于:

56、通过所述接口请求函数调用所述model层以查询所述接口的输入参数和/或基础参数。

57、上述方案中,model层用于获取不同接口请求的输入参数以及基础响应参数,参数的自动调用便于接口测试的自动化完成。

58、较佳地,所述测试用例驱动模块具体用于:

59、通过预设的测试用例给接口参数赋值后,以调用所述service层的对应第一方法。

60、上述方案中,通过预设的测试用例给接口参数赋值后,直接调用所述service层中的对应第一方法,比如调用querystationinfo方法来实现对换电站站点信息的查询的接口测试请求,亦可以调用其他的方法实现不同的接口测试需求。

61、较佳地,所述接口请求调用模块还用于在所述service层中调用所述接口请求函数,以查询所述接口的输入参数,还用于在所述api层通过所述加密方式对所述输入参数进行加密处理;

62、和/或,所述接口的输入参数包括以下一种或几种:密码、换电站的信息、电池仓信息、电池充电信息以及换电车辆信息;

63、和/或,所述测试用例至少包括测试所述接口的输入参数的加密准确性;

64、和/或,所述加密方式包括基于aes加密算法进行加密;

65、和/或,所述自动化框架基于restassured+junit5搭建。

66、上述方案中,在service层还完成对输入参数的加密处理,确保接口测试中数据的安全性,通过对换电相关信息加密,提高换电系统中接口的参数的保密性。

67、一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的接口测试方法。

68、本发明的积极进步效果在于:本技术引入接口自动化可以提前介入测试且测试快速高效,通过测试的分布执行,脚本模块化、数据驱动、日志分析、共享对象库、公共函数库、环境配置等分层设计,实现无人值守也方便回归,可以更好的利用资源,具有一致性和可重复性的特点,自动化测试脚本完全可复用,提升了接口的可信度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1