【技术实现步骤摘要】
基于代码分析的测试用例辅助定位方法及装置
[0001]本专利技术涉及软件测试
,尤其是涉及一种基于代码分析的测试用例辅助定位方法及装置。
技术介绍
[0002]通常对软件进行测试之前,需要编写测试用例,然后人工去逐条执行用例或者自动化执行用例以达到测试的目的。但随着软件迭代版本以及需要适配的运行场景增多,测试用例的数量会大量增加,一个成熟系统的普通模块测试用例数量级在几千个,整个系统测试用例可达到几万,甚至十万。这就带来了一个问题,如果软件修改了某个模块的一行代码,为了获知需要执行多少个用例、哪些用例才能覆盖软件的修改,通常的做法是测试人员和开发人员沟通,双方共识后主观判断受影响的用例,而且为了测试完整,会进行修改模块的整体测试,但这种做法在软件数量庞大且运行场景很多时显然带来了灾难级的工作量,就算使用自动化测试也难以在短时间内完成,且由于人的主观性较强容易造成用例覆盖不准确(可能覆盖过多、可能覆盖过少),从而影响测试结果。
技术实现思路
[0003]有鉴于此,本专利技术的目的在于提供一种基于代码分析的 ...
【技术保护点】
【技术特征摘要】
1.一种基于代码分析的测试用例辅助定位方法,其特征在于,所述方法包括:解析出目标文件的源代码的结构,并基于所述源代码的结构建立所述目标文件的索引信息;获取提交的修改代码的修改位置;基于所述目标文件的索引信息,确定所述修改位置对应的目标接口;基于预先建立的接口与用例之间的关联关系,确定所述目标接口对应的目标用例。2.根据权利要求1所述的方法,其特征在于,所述源代码的结构包括所述源代码的各个函数间的调用关系;解析出目标文件的源代码的结构的步骤包括:对所述源代码进行函数级别的解析,得到所述源代码的函数集合;解析出所述函数集合中各个函数的参数;其中,所述参数包括函数名称;根据所述函数集合中各个函数的参数,确定所述源代码的各个函数间的调用关系。3.根据权利要求2所述的方法,其特征在于,基于所述源代码的结构建立所述目标文件的索引信息的步骤包括:根据所述源代码的各个函数间的调用关系,确定所述源代码的每个函数的引用和/或调用者;对于所述源代码的具有调用者的每个函数,将该函数分别与该函数的每个调用者对应关联成相应的键值对;将得到的全部键值对组成所述目标文件的索引信息。4.根据权利要求1所述的方法,其特征在于,基于所述目标文件的索引信息,确定所述修改位置对应的目标接口的步骤包括:基于所述修改位置查找所述目标文件的索引信息以确定所述修改位置对应的一个或多个目标函数,并将确定的全部目标函数作为所述目标接口;其中,每个目标函数均不具有相应的调用者。5.根据权利要求2所述的方法,其特征在于,对所述源代码进行函数级别的解析,...
【专利技术属性】
技术研发人员:朱勇,顾勤,袁玮,张作宸,卢伟,
申请(专利权)人:天津卓朗昆仑云软件技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。