一种测试方法及终端技术

技术编号:18783455 阅读:28 留言:0更新日期:2018-08-29 06:50
本申请提供了一种性测试方法及终端,通过预先构建针对新版本的开发对象的功能函数映射关系,由于该功能函数映射关系能够表示该新版本的开发对象的功能及对应调用的各函数间的对应关系,所以,在获得新版本的开发对象相对于原版本的该开发对象的变更函数后,能够直接利用构建的该功能函数映射关系,准确且自动确定该变更函数将会影响到的新版本开发对象的测试功能,从而通过该测试功能精确定位需要测试的所有测试用例,不需要测试人员询问参与该开发对象的新版本开发的所有开发人员,也不用人工对各开发人员提供的变更函数进行一一检查,大大减少了测试人员的工作量。

【技术实现步骤摘要】
一种测试方法及终端
本申请主要涉及计算机
,更具体地说是涉及一种测试方法及终端。
技术介绍
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。也就是说,目前很多企业、团队等都是由多个人共同开发一个项目,通过该版本控制系统来共用资源,以提高软件开发效率。基于此,当多人共同开发的项目是针对现有应用等开发对象的版本更新,目前通常是由测试人员在测试之前,询问参与该项目的其他开发人员其所写代码可能造成的影响,再基于询问结果查询表格资源,从而对相应的功能模块进行测试,非常耗时,且检测精准度不高;若是由测试人员获得该项目的变更函数后,通过人工方式一一检查,虽然能够提高测试精准度,但测试过程花费的时间过长,且会进一步加大了测试人员的工作量。
技术实现思路
有鉴于此,本专利技术提供了一种测试方法及终端,通过利用构建的新版本开发对象的各功能与对应调用的函数间的关系,在获得该新版本的开发对象的变更函数后,直接确定变更函数对应的功能,从而对与该功能关联的测试用例进行测试,保证了测试精准度,且无需测试人员询问开发人员,也不需要人工一一检查,大大减少了测试人员的工作量。为了实现上述目的,本申请提供了以下技术方案:一种测试方法,所述方法包括:获得新版本的开发对象相对于原版本的所述开发对象的变更函数;利用已构建的针对所述新版本的开发对象的功能函数映射关系,确定所述新版本的开发对象运行中调用所述变更函数的功能,并将确定的所述新版本的开发对象的功能作为测试功能;获取所述测试功能关联的测试用例,输出执行所述测试用例的测试结果。本申请实施例还提供了一种测试终端,所述终端包括:获得模块,用于获得新版本的开发对象相对于原版本的所述开发对象的变更函数;处理模块,用于利用已构建的针对所述新版本的开发对象的功能函数映射关系,确定所述新版本的开发对象运行中调用所述变更函数的功能,并将确定的新版本的开发对象的功能作为测试功能,获取所述测试功能关联的测试用例;输出模块,用于输出执行所述测试用例的测试结果。由此可见,与现有技术相比,本申请提供了一种性测试方法及终端,通过预先构建针对新版本的开发对象的功能函数映射关系,由于该功能函数映射关系能够表示该新版本的开发对象的功能及实现该功能所调用的各函数间的对应关系,所以,在获得新版本的开发对象相对于原版本的该开发对象的变更函数后,能够直接利用构建的该功能函数映射关系,自动准确地确定新版本开发对象运行中,将会调用该变更函数的所有功能,即该变更函数可能会影响到的新版本的开发对象的所有功能,并将确定的这些功能作为测试功能,从而精确定位到变更函数影响到的客户端的所有测试用例,并输出执行该测试用例得到的测试结果,不需要测试人员询问参与该开发对象的新版本开发的所有开发人员,并对各开发人员提供的变更函数可能影响到测试用例进行一一检查,大大减少了测试人员的工作量,提高了测试精准度。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例提供的一种测试方法的流程图;图2为本申请实施例提供的一种功能用例关系示意图;图3为本申请实施例提供的另一种测试方法的部分流程图;图4为本申请实施例提供的一种函数调用关系图的示意图;图5为本申请实施例提供的一种功能触达方式示意图;图6为本申请实施例提供的一种函数调用文件示意图;图7为本申请实施例提供的一种功能函数映射关系示意图;图8为本申请实施例提供的又一种测试方法的流程图;图9为本申请实施例提供的一种测试终端的结构框图;图10为本申请实施例的提供的另一种测试终端的结构框图;图11为本申请实施例的提供的又一种测试终端的结构框图;图12为本申请实施例提供的一种测试终端的硬件结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为了使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。其中,为了方便理解本申请技术方案,将对下文实施例可能涉及到的技术术语进行解释说明,具体如下:测试用例:是指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略,内容通常包括测试目标、测试环境、输入数据、测试步骤、预期结果以及测试脚本等等,并形成文档,通常可以分为:功能性测试用例、界面测试用例、数据处理测试用例、操作流程测试用例、安装测试用例等等。可见,测试人员针对开发人员根据软件或游戏某个功能所编写测试条例,执行该测试用例后,可以将输出结果作为测试结果;资源文件:多用于配置游戏或软件文件显示以及功能实现的开关;精准测试:通过各种方式,将原有大量的测试内容精简到一小部分,也能保证测试质量的方式;函数调用关系图:软件程序运行时的所有函数调用关系的图。参照图1,为本申请实施例提供的一种测试方法的流程图,该方法可以包括以下步骤:步骤S11,获的新版本的开发对象相对于原版本的该开发对象的变更函数;在本实施例中,上述开发对象可以是游戏软件或其他应用程序等,本申请对其包括的具体内容不作限定。在实际应用中,尤其是对现有的一款应用进行版本更新时,为了提高对该应用新版本的开发效率,通常会有多个开发人员参与,必要时还会有测试人员、管理人员等参数,从而使该应用的新版本信息(如配置文件、资源文件、代码函数等)由多人共同完成,一般情况下,对于新版本的不同内容通常是由不同的开发人员来完成,即分工合作,来进一步提高开发效率。在开发人员将其所写的代码提交至版本控制系统后,通过差异化对比,如执行svndiff命令,从而获得当前针对同一个开发对象的新版本信息相对于原版本信息的变更函数(可以包括开发人员提交的代码)。也就是说,针对该开发对象,以最近一次的版本信息为基准,获得当前产生的新版本的该开发对象的差异化信息,如上述变更函数。可选的,在获得新版本的开发对象的变更函数后,可以输出该变更函数,以便测试人员直观得知更改内容,根据需要,还可以调整不同类型变更函数的显示状态,如改变不停类型变更函数的背景颜色,字体颜色等等。步骤S12,利用已构建的针对新版本的开发对象的功能函数映射关系,确定新版本的开发对象运行中调用该变更函数的所有功能,并将其作为该新版本的开发对象的测试功能;其中,上述功能函数映射关系可以表示新版本的开发对象的各功能与实现该功能所调用的函数间的关系,本申请对该功能函数映射关系的具体表示方式不作限定。可选的,该功能函数映射关系具体可以包括触达新版本的开发对象一个功能的过程中所调用函数的函数调用文件,而该函数调用文件包括至少一个函数,即触达该功能过程中调用的至少一个函数,本申请对该函数调本文档来自技高网...

【技术保护点】
1.一种测试方法,其特征在于,所述方法包括:获得新版本的开发对象相对于原版本的所述开发对象的变更函数;利用已构建的针对所述新版本的开发对象的功能函数映射关系,确定所述新版本的开发对象运行中调用所述变更函数的功能,并将确定的功能作为所述新版本的开发对象的测试功能;获取所述测试功能关联的测试用例,输出执行所述测试用例的测试结果。

【技术特征摘要】
1.一种测试方法,其特征在于,所述方法包括:获得新版本的开发对象相对于原版本的所述开发对象的变更函数;利用已构建的针对所述新版本的开发对象的功能函数映射关系,确定所述新版本的开发对象运行中调用所述变更函数的功能,并将确定的功能作为所述新版本的开发对象的测试功能;获取所述测试功能关联的测试用例,输出执行所述测试用例的测试结果。2.根据权利要求1所述的方法,其特征在于,所述功能函数映射关系包括触达所述新版本的开发对象一个功能的过程中所调用函数的函数调用文件,所述函数调用文件包括至少一个函数;则所述利用已构建的针对所述新版本的开发对象的功能函数映射关系,确定所述新版本的开发对象运行中调用所述变更函数的功能,包括:搜索功能函数映射关系中的函数调用文件,确定所述变更函数所在的函数调用文件;获得与确定的函数调用文件对应的功能。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:记录触达所述新版本的开发对象的各功能对应调用的至少一个函数,以及所述至少一个函数间的函数调用顺序;基于记录结果,生成所述各功能一一对应的函数调用文件;利用生成的所有函数调用文件,构建针对所述新版本的开发对象的功能函数映射关系。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:记录触达所述新版本的开发对象的各功能对应的路径信息;利用记录的各功能的路径信息,对生成的相应功能的所述函数调用文件进行命名。5.根据权利要求1所述的方法,其特征在于,所述获取所述测试功能关联的测试用例,包括:基于预存的所述新版本的开发对象的功能用例关系,确定与所述测试功能关联的测试用例,所述功能用例关系表示所述新版本的开发对象的各功能与具有对应功能的测试用例间的关系;导出确定的测试用例。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:在进行新版本的开发对象的构建时,获取版本控制系统的变更信息;基于所述变更信息,判断所述新版本的开发对象是否存在相对于原版本的所述开发对象的变更函数;如果存在,执行所述获得新版本的开发对象相对于原版本的所述开发对象的变更函数步骤。7.根据权利要求6所述的方法,其特征在于,当所述新版本的开发对象不存在相对于原版本的所述开发对象的变更函数,所述方法还包括:检测已生成的所述新版本的开发对象的函数调用关系图;删除所述函数调用关系图中重复函数以及公用函数;利用删除后的函数调用关系图,构建针对所述新版本的开发对象的功能函数映射关系。8.根据权利要求1-7任意一项所述的方法,其特征在于,所述方法还包括:将获取的测试用例发送至预先分配的测...

【专利技术属性】
技术研发人员:顾志翔周海魏学峰
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1