一种测试方法、装置、设备、存储介质及产品与流程

文档序号:36449808发布日期:2023-12-21 14:42阅读:19来源:国知局
一种测试方法与流程

本申请涉及计算机,具体涉及一种测试方法、一种测试装置、一种计算机设备、一种计算机可读存储介质及一种测试产品。


背景技术:

1、随着科技研究的进步,计算机技术飞速发展。软件开发是计算机技术中不可或缺的一部分。在软件开发的过程中,为了保证软件质量,软件开发人员通常会对开发的软件进行测试,软件测试过程可以包括单元测试、集成测试等。实践发现,在软件测试过程中,被测试单元所依赖的组件难以在测试环境中进行模拟或替代,如何在软件测试过程中对依赖组件执行的代码段进行测试,成为目前研究的热门问题。


技术实现思路

1、本申请实施例提供了一种测试方法、装置、设备、计算机可读存储介质及产品,能够对依赖组件执行的代码段进行测试。

2、一方面,本申请实施例提供了一种测试方法,包括:

3、获取待测试单元的测试数据,测试数据包括目标代码段,目标代码段所指示的操作依赖n个组件执行,每个组件为一个可独立运行的软件单元,n为正整数;

4、获取加载有n个组件的n个容器,n个容器与n个组件一一对应,任一个容器用于为该容器对应的组件提供独立的运行环境;

5、调用n个容器中的组件执行目标代码段所指示的操作,得到目标代码段的执行结果;执行结果用于得到待测试单元的测试结果。

6、一方面,本申请实施例提供了一种测试装置,该测试装置包括:

7、获取单元,用于获取待测试单元的测试数据,测试数据包括目标代码段,目标代码段所指示的操作依赖n个组件执行,每个组件为一个可独立运行的软件单元,n为正整数;

8、以及用于获取加载有n个组件的n个容器,n个容器与n个组件一一对应,任一个容器用于为该容器对应的组件提供独立的运行环境;

9、处理单元,用于调用n个容器中的组件执行目标代码段所指示的操作,得到目标代码段的执行结果;执行结果用于得到待测试单元的测试结果。

10、在一种实施方式中,处理单元用于,获取加载有n个组件的n个容器,具体用于:

11、获取待测试单元的配置文件,配置文件包括与n个组件相关联的参数;

12、通过与n个组件相关联的参数,生成目标文件;目标文件定义了与n个组件对应的n个容器;

13、运行目标文件,得到加载有n个组件的n个容器。

14、在一种实施方式中,目标文件包括第一指令和第二指令;第一指令用于获取n个组件的镜像文件,第二指令用于启动n个容器加载相应的镜像文件;处理单元用于,运行目标文件,得到加载有n个组件的n个容器,具体用于:

15、通过执行第一指令,得到n个组件的镜像文件;

16、通过执行第二指令,得到加载有n个组件的n个容器。

17、在一种实施方式中,处理单元用于,通过执行第一指令,得到n个组件的镜像文件,具体用于:

18、响应于第一指令被执行,检测本地缓存区中是否存在第i个组件的镜像文件,i为小于等于n的正整数;

19、若本地缓存区中存在第i个组件的镜像文件,则从本地缓存区中获取第i个组件的镜像文件;

20、若本地缓存区中不存在第i个组件的镜像文件,则从镜像仓库中下载第i个组件的镜像文件。

21、在一种实施方式中,n个组件的镜像文件和n个容器通过容器服务进行管理;处理单元用于,通过执行第二指令,得到加载有n个组件的n个容器,具体用于:

22、通过第二指令,调用容器服务的应用程序接口,以使容器服务启动n个容器加载相应的镜像文件,得到加载有n个组件的n个容器。

23、在一种实施方式中,n个组件均为数据库组件,与n个组件相关联的参数包括:待测试单元在测试过程中需要访问的数据库的标识;处理单元用于,通过与n个组件相关联的参数,生成目标文件,具体用于:

24、基于待测试单元在测试过程中需要访问的数据库的标识,以及数据库与数据库组件间的关联关系,确定执行目标代码段所需依赖的n个数据库组件;

25、按照数据库组件与容器的对应关系,生成n个数据库组件对应的n个容器的容器配置信息;

26、对容器配置信息进行打包,得到目标文件。

27、在一种实施方式中,测试数据还包括测试用例;处理单元用于,调用n个容器中的组件执行目标代码段所指示的操作,得到目标代码段的执行结果,具体用于:

28、基于测试用例和目标代码段,创建n个组件的组件实例;

29、通过组件实例调用n个容器中的组件执行目标代码段所指示的操作,得到目标代码段的执行结果。

30、在一种实施方式中,n个组件的组件实例缓存于软件开发工具包中;处理单元还用于:

31、当检测到测试用例完成测试,从软件开发工具包清除n个组件的组件实例。

32、在一种实施方式中,n个容器通过软件开发工具包进行管理;处理单元还用于:

33、响应于待测试单元测试完成,通过软件开发工具包清除n个容器。

34、在一种实施方式中,n个组件均为数据库组件,目标代码段所指示的操作为数据库访问操作;处理单元用于,调用n个容器中的组件执行目标代码段所指示的操作,得到目标代码段的执行结果,具体用于:

35、调用n个容器中的数据库组件执行数据库访问操作,得到目标代码段的执行结果;

36、其中,数据库访问操作包括以下至少一项:数据读取操作、数据修改操作,数据添加操作、数据删除操作。

37、在一种实施方式中,若测试单元的测试阶段为本地测试阶段,则n个容器存储于本地内存中;

38、若测试单元的测试阶段为持续集成测试阶段,则n个容器存储于本地内存中,或者存储于持续集成服务器中。

39、相应地,本申请提供了一种计算机设备,该计算机设备包括:

40、存储器,存储器中存储有计算机程序;

41、处理器,用于加载计算机程序实现上述测试方法。

42、相应地,本申请提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行上述测试方法。

43、相应地,本申请提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述测试方法。

44、本申请实施例中,获取待测试单元的测试数据,测试数据包括目标代码段,目标代码段所指示的操作依赖n个组件执行,获取加载有n个组件的n个容器,n个容器与n个组件一一对应,任一个容器用于为该容器对应的组件提供独立的运行环境,调用n个容器中的组件执行目标代码段所指示的操作,得到目标代码段的执行结果。可见,在软件测试过程中,通过加载有相应组件的容器,来为待测试单元提供测试时所需依赖的组件,可以对待测试单元中依赖组件执行的代码段进行测试。



技术特征:

1.一种测试方法,其特征在于,所述方法包括:

2.如权利要求1所述的方法,其特征在于,所述获取加载有所述n个组件的n个容器,包括:

3.如权利要求2所述的方法,其特征在于,所述目标文件包括第一指令和第二指令;所述第一指令用于获取所述n个组件的镜像文件,所述第二指令用于启动所述n个容器加载相应的镜像文件;所述运行所述目标文件,得到加载有所述n个组件的n个容器,包括:

4.如权利要求3所述的方法,其特征在于,所述通过执行所述第一指令,得到所述n个组件的镜像文件,包括:

5.如权利要求3所述的方法,其特征在于,所述n个组件的镜像文件和所述n个容器通过容器服务进行管理;所述通过执行所述第二指令,得到加载有所述n个组件的n个容器,包括:

6.如权利要求2所述的方法,其特征在于,所述n个组件均为数据库组件,与所述n个组件相关联的参数包括:所述待测试单元在测试过程中需要访问的数据库的标识;所述通过与所述n个组件相关联的参数,生成目标文件,包括:

7.如权利要求1所述的方法,其特征在于,所述测试数据还包括测试用例;所述调用所述n个容器中的组件执行所述目标代码段所指示的操作,得到所述目标代码段的执行结果,包括:

8.如权利要求7所述的方法,其特征在于,所述n个组件的组件实例缓存于软件开发工具包中,所述方法还包括:

9.如权利要求1所述的方法,其特征在于,所述n个容器通过软件开发工具包进行管理;所述方法还包括:

10.如权利要求1所述的方法,其特征在于,所述n个组件均为数据库组件,所述目标代码段所指示的操作为数据库访问操作;所述调用所述n个容器中的组件执行所述目标代码段所指示的操作,得到所述目标代码段的执行结果,包括:

11.如权利要求1所述的方法,其特征在于,若所述测试单元的测试阶段为本地测试阶段,则所述n个容器存储于本地内存中;

12.一种测试装置,其特征在于,所述测试装置包括:

13.一种计算机设备,其特征在于,包括:

14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-11任一项所述的测试方法。

15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-11任一项所述的测试方法。


技术总结
本申请实施例公开了一种测试方法、装置、设备、存储介质及产品。其中方法包括:获取待测试单元的测试数据,测试数据包括目标代码段,目标代码段所指示的操作依赖N个组件执行,获取加载有N个组件的N个容器,N个容器与N个组件一一对应,任一个容器用于为该容器对应的组件提供独立的运行环境,调用N个容器中的组件执行目标代码段所指示的操作,得到目标代码段的执行结果。可见,在软件测试过程中,通过加载有相应组件的容器,来为待测试单元提供测试时所需依赖的组件,可以对待测试单元中依赖组件执行的代码段进行测试。

技术研发人员:向以珍
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1