本发明涉及计算机,尤其涉及一种单元测试的处理方法、装置、设备、介质和产品。
背景技术:
1、为了更好的保证软件的健壮性,在软件程序编写时,会针对业务场景功能构建对应的单元测试。单元测试又称为模块测试,是针对程序模块来进行正确性校验的测试工作,程序模块是软件的最小可测部件,一个程序模块就是单个程序、函数或过程等。
2、现有技术通常需要开发人员手动创建单元测试相关的框架及单元测试方法后,才可以执行单元测试,不仅人工成本较高,且还会影响单元测试的执行效率。
技术实现思路
1、本发明提供了一种单元测试的处理方法、装置、设备、介质和产品,以解决现有技术依赖开发人员手动创建单元测试相关的框架及单元测试方法,成本高且影响单元测试执行效率的问题。
2、根据本发明的一方面,提供了一种单元测试的处理方法,包括:
3、在监听到用户实施的代码保存事件时,获取所述代码保存事件对应的目标代码包,并根据所述目标代码包的目录结构生成目标业务模块的根节点目录;其中,所述目标业务模块为所述目标代码包所在的业务模块;
4、确定所述目标代码包中代码包含的至少一个候选服务类,并在所述根节点目录中创建各所述候选服务类分别对应的测试子目录;
5、在各所述测试子目录中创建各所述候选服务类分别对应的候选单元测试类,并根据各所述候选服务类分别对应的公有方法名称,在各所述候选单元测试类中创建候选单元测试方法名称;其中,所述公有方法名称为公有的服务类方法对应的方法名称;
6、确定各所述候选服务类包含的候选服务类方法,并根据各所述候选服务类方法所属的候选方法类型,以及方法类型与方法体之间的关联关系,从所述方法体中确定各所述候选服务类关联的候选方法体,作为对应候选单元测试方法名称关联的目标方法体;
7、根据各所述候选单元测试方法名称,和各所述候选单元测试方法名称关联的目标方法体,在各所述候选单元测试类中生成针对所述目标业务模块的目标单元测试方法。
8、根据本发明的另一方面,提供了一种单元测试的处理装置,包括:
9、根节点目录生成模块,用于在监听到用户实施的代码保存事件时,获取所述代码保存事件对应的目标代码包,并根据所述目标代码包的目录结构生成目标业务模块的根节点目录;其中,所述目标业务模块为所述目标代码包所在的业务模块;
10、测试子目录创建模块,用于确定所述目标代码包中代码包含的至少一个候选服务类,并在所述根节点目录中创建各所述候选服务类分别对应的测试子目录;
11、方法名称创建模块,用于在各所述测试子目录中创建各所述候选服务类分别对应的候选单元测试类,并根据各所述候选服务类分别对应的公有方法名称,在各所述候选单元测试类中创建候选单元测试方法名称;其中,所述公有方法名称为公有的服务类方法对应的方法名称;
12、目标方法体确定模块,用于确定各所述候选服务类包含的候选服务类方法,并根据各所述候选服务类方法所属的候选方法类型,以及方法类型与方法体之间的关联关系,从所述方法体中确定各所述候选服务类关联的候选方法体,作为对应候选单元测试方法名称关联的目标方法体;
13、目标单元测试方法生成模块,用于根据各所述候选单元测试方法名称,和各所述候选单元测试方法名称关联的目标方法体,在各所述候选单元测试类中生成针对所述目标业务模块的目标单元测试方法。
14、根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
15、至少一个处理器;以及
16、与所述至少一个处理器通信连接的存储器;其中,
17、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一项所述的单元测试的处理方法。
18、根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一项所述的单元测试的处理方法。
19、根据本发明的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本发明任一项所述的单元测试的处理方法。
20、本发明通过在监听到用户实施的代码保存事件时,获取代码保存事件对应的目标代码包,并根据目标代码包的目录结构生成目标业务模块的根节点目录;其中,目标业务模块为目标代码包所在的业务模块;确定目标代码包中代码包含的至少一个候选服务类,并在根节点目录中创建各候选服务类分别对应的测试子目录;在各测试子目录中创建各候选服务类分别对应的候选单元测试类,并根据各候选服务类分别对应的公有方法名称,在各候选单元测试类中创建候选单元测试方法名称;其中,公有方法名称为公有的服务类方法对应的方法名称;确定各候选服务类包含的候选服务类方法,并根据各候选服务类方法所属的候选方法类型,以及方法类型与方法体之间的关联关系,从方法体中确定各候选服务类关联的候选方法体,作为对应候选单元测试方法名称关联的目标方法体;根据各候选单元测试方法名称,和各候选单元测试方法名称关联的目标方法体,在各候选单元测试类中生成针对目标业务模块的目标单元测试方法,实现了在监听到代码保存事件时,自动创建针对目标业务模块的单元测试相关的框架及单元测试方法的效果,无需开发人员手动介入,减少了人工成本的同时,加快了单元测试相关的框架及单元测试方法创建的效率,进一步保证了单元测试的执行效率。
21、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
1.一种单元测试的处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述在所述根节点目录中创建各所述候选服务类分别对应的测试子目录,包括:
3.根据权利要求1所述的方法,其特征在于,所述根据各所述候选服务类方法所属的候选方法类型,以及方法类型与方法体之间的关联关系,从所述方法体中确定各所述候选服务类关联的候选方法体,包括:
4.根据权利要求1所述的方法,所述根据所述目标代码包的目录结构生成目标业务模块的根节点目录之后,还包括:
5.根据权利要求4所述的方法,其特征在于,所述各所述候选模拟对象分别对应的候选模拟数据值通过如下方式确定:
6.根据权利要求4所述的方法,所述在所述根节点目录中创建测试上下文类之后,还包括:
7.根据权利要求4所述的方法,所述在各所述测试子目录中创建各所述候选服务类分别对应的候选单元测试类之后,还包括:
8.根据权利要求7所述的方法,还包括:
9.一种单元测试的处理装置,其特征在于,包括:
10.一种电子设备,其特征在于,所述电子设备包括:
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行权利要求1-8中任一项所述的单元测试的处理方法。
12.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-8中任一项所述的单元测试的处理方法。