测试用例试生成方法、系统、计算机设备和存储介质与流程

文档序号:33782308发布日期:2023-04-19 01:14阅读:32来源:国知局
测试用例试生成方法、系统、计算机设备和存储介质与流程

本技术涉及软件开发,特别是涉及一种测试用例试生成方法、系统、计算机设备和存储介质。


背景技术:

1、随着软件项目的不断更新迭代,功能越来越多,开发出来的后端接口也越来越多。而接口测试是非常重要的,接口的测试一般包括接口的参数、功能测试和接口的安全测试。接口的参数、功能测试需要开发人员录入的接口信息文档然后测试人员编写、运行接口测试用例。接口的数量越来越多,导致开发人员的时间成本和测试人员的时间成本不断增加,并且由于项目时间的限制,会经常导致测试用例的漏测进而影响项目的质量。但是接口的安全测试经常没有受到重视,使项目有很大的安全隐患。

2、为了解决这些问题,传统的解决办法是:接口参数测试和功能测试往往会引入的自动化测试技术来替代大部分的接口回归测试。传统的接口自动化测试需要经历下面五个大步骤:步骤一:开发人员手工录入大量接口参数,步骤二:测试人员根据录入的接口参数设计自动化测试用例方案,步骤三:根据步骤二设计的接口自动化测试用例方案在excel中编写接口自动化测试用例,步骤四:执行接口自动化测试用例程序,步骤五:得到执行接口自动化测试用例接口的报告。而接口的安全测试则由手工测试。

3、传统的接口参数测试和功能自动化测试方案需要开发人员花大量时间来录入接口信息,如果从前没有对接口信息进行文档的落地的话,还需要另外花更多时间对从前的接口进行填补。大量接口信息的录入经常会出现接口参数录错或者漏录,影响后期测试人员的测试用例设计和编写质量。对于测试人员来说,该方案对技术水平依赖性大,学习成本高,且编写用例的时间成本大,这些缺点最终导致接口自动化测试用例项目难以落地。而接口安全测试尽管进行了一次安全测试,但是接口代码进行变更后没有再次进行安全测试,在安全性上存在缺陷。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种测试用例试生成方法、系统、计算机设备和存储介质,能够解决至少一种以下现有技术的不足:开发人员补充历史版本和不断新增需求的大量接口信息数据时,需要人工填充记录;接口参数自动化测试用例需要人工编写;接口安全测试用例需要人工编写;接口安全测试没有纳入自动化测试系统中;接口自动化测试用例保存在excel中,数据混乱且excel保存方式不安全。

2、一方面,提供一种测试用例试生成方法,所述方法包括:

3、在浏览器中设置抓取接口信息的插件,插件自动捕获被点击的目标功能的接口请求数据并生成一个记录所有接口信息的数据交换文件;

4、获取所述数据交换文件中的接口请求数据,分析所有参数的参数类型、参数长度及参数值;

5、根据接口的请求方式和所述接口请求数据的内容来组合生成接口参数测试用例;

6、根据接口的无用户身份验证、接口sol注入方向生成接口安全测试用例;

7、将所有接口信息、接口参数测试用例和接口安全测试用例储存到数据库中。

8、在其中一个实施例中,在所述插件自动捕获被点击的目标功能的接口请求数据步骤中,包括:

9、在启动浏览器时同步启动抓取接口信息的插件;

10、实时检测浏览器页面中是否存在被点击的目标功能;

11、当存在被点击的目标功能时,所述插件自动捕获被点击的目标功能的接口请求数据,所述接口请求数据包含接口的统一资源定位符、请求头、请求体、请求协议、返回参数;

12、将所述接口请求数据生成一个记录所有接口信息的数据交换文件。

13、在其中一个实施例中,在所述获取所述数据交换文件中的接口请求数据,分析所有参数的参数类型、参数长度及参数值步骤中,包括:

14、分析所述数据交换文件中所有接口的统一资源定位符、请求头、请求体、请求协议、返回参数;

15、递归分析每一请求体所有参数的参数类型、参数长度及参数值。

16、在其中一个实施例中,所述根据接口的请求方式和所述接口请求数据的内容来组合生成接口参数测试用例步骤,包括:

17、获取接口的请求方式,所述接口的请求方式包括get请求、post请求、head请求、put请求、delete请求和options请求;

18、获取参数类型,所述参数类型包括string、int、long和double;

19、获取参数长度,所述参数长度包括参数最小长度和参数最大长度;

20、获取参数值取值范围,所述参数值取值范围包括上边界值、下边界值以及位于上边界值和下边界值之间的正常值;

21、根据接口的请求方式、参数类型、参数最小长度、参数最大长度、参数值取值范围来获取由多种组合方式构成的组合集合;

22、根据所述组合集合中每一种组合方式分别生成接口参数测试用例。

23、在其中一个实施例中,在所述根据接口的请求方式和所述接口请求数据的内容来组合生成接口参数测试用例步骤中,若对接口分析为枚举类型,对各个枚举类型生成接口参数测试用例。

24、在其中一个实施例中,在所述根据接口的请求方式和所述接口请求数据的内容来组合生成接口参数测试用例步骤中,包括:

25、判断参数值取值范围是否存在限制;

26、若参数值取值范围存在限制,则获取参数值取值范围之内的上边界值、下边界值和位于上边界值和下边界值之间的多个正常值,并获取参数值取值范围之外的多个域外参数值;

27、对正常值、上边界值、下边界值以及域外参数值分别进行取值生成接口参数测试用例。

28、在其中一个实施例中,在所述根据接口的无用户身份验证、接口sol注入方向生成接口安全测试用例步骤中,包括:

29、获取用户身份验证信息存储位置;所述用户身份验证信息存储位置包括保存在浏览器端的cookie,和/或保存在服务端的session;

30、根据用户身份验证信息存储位置生成不携带cookie或者session的接口安全测试用例;

31、根据用户身份验证信息存储位置生成携带错误信息的cookie或者session的接口安全测试用例。

32、在其中一个实施例中,在所述将所有接口信息、接口参数测试用例和接口安全测试用例储存到数据库中步骤,包括:

33、获取所有接口信息,命名每个接口名称用来注解每个接口功能,并异步导入数据库的接口信息表中进行保存;

34、将所有接口参数测试用例和所有接口安全测试用例储存到数据库中;

35、获取运行完成所述接口参数测试用例和所述接口安全测试用例后生成的测试报告,将所述测试报告储存到数据库中。

36、另一方面,提供了一种测试用例试生成系统,所述系统包括:

37、插件管理模块,用于在浏览器中设置抓取接口信息的插件,插件自动捕获被点击的目标功能的接口请求数据并生成一个记录所有接口信息的数据交换文件;

38、接口参数分析模块,用于获取所述数据交换文件中的接口请求数据,分析所有参数的参数类型、参数长度及参数值;

39、生成接口参数测试用例模块,用于根据接口的请求方式和所述接口请求数据的内容来组合生成接口参数测试用例;

40、生成接口安全测试用例模块,用于根据接口的无用户身份验证、接口sol注入方向生成接口安全测试用例;

41、数据储存管理模块,用于将所有接口信息、接口参数测试用例和接口安全测试用例储存到数据库中。

42、再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

43、在浏览器中设置抓取接口信息的插件,插件自动捕获被点击的目标功能的接口请求数据并生成一个记录所有接口信息的数据交换文件;

44、获取所述数据交换文件中的接口请求数据,分析所有参数的参数类型、参数长度及参数值;

45、根据接口的请求方式和所述接口请求数据的内容来组合生成接口参数测试用例;

46、根据接口的无用户身份验证、接口sol注入方向生成接口安全测试用例;

47、将所有接口信息、接口参数测试用例和接口安全测试用例储存到数据库中。

48、又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

49、在浏览器中设置抓取接口信息的插件,插件自动捕获被点击的目标功能的接口请求数据并生成一个记录所有接口信息的数据交换文件;

50、获取所述数据交换文件中的接口请求数据,分析所有参数的参数类型、参数长度及参数值;

51、根据接口的请求方式和所述接口请求数据的内容来组合生成接口参数测试用例;

52、根据接口的无用户身份验证、接口sol注入方向生成接口安全测试用例;

53、将所有接口信息、接口参数测试用例和接口安全测试用例储存到数据库中。

54、上述测试用例试生成方法、系统、计算机设备和存储介质,能够自动捕获目标功能的接口请求数据并自动生成接口安全测试用例和接口参数测试用例,大大节省开发人员和软件测试人员工作时间成本,且接口自动化测试用例的质量和成功率大大提升,项目的质量得到了更大的保障。

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