【技术实现步骤摘要】
【专利摘要】本专利技术涉及一种基于函数调用路径的覆盖率动态跟踪方法及装置,实现方案为:对被测源代码进行插桩预处理,得到函数对象列表和控制关键字对象列表;得到源代码的函数调用基本路径集;执行测试用例,并运行插桩后的源代码,获得由源代码的执行路径的桩点数据流组成的动态路径;对动态路径进行拆分,得到测试用例所覆盖的函数调用路径子集;将函数调用路径子集与函数调用基本路径集进行匹配;将所有函数调用路径子集作为一个动态路径集,优化该动态路径集;计算优化后的动态路径集占函数调用基本路径集的比率,得到覆盖率。本专利技术将路径覆盖粒度由语句扩展到函数级别,避免了传统路径覆盖路径集庞大而无法完全测试每条路径的问题。【专利说明】—种基于函数调用路径的覆盖率动态跟踪方法及装置
本专利技术涉及软件测试的覆盖分析
,特别是涉及一种基于函数调用路径的覆盖率动态跟踪方法及装置。
技术介绍
以下是本领域中的一些名词解释,其使用范围仅限于本专利技术:函数调用关系:函数调用关系是以函数为基本单位,通过分析源程序里函数之间的逻辑关系得来的。函数调用基本路径集:是源代码按照函数调用关系进 ...
【技术保护点】
一种基于函数调用路径的覆盖率动态跟踪方法,其特征在于,包括:步骤1,对被测源代码进行插桩预处理,得到函数对象列表和控制关键字对象列表;步骤2,获取源代码的函数调用基本路径集;步骤3,执行测试用例,并运行经步骤1插桩后的源代码,获得由源代码的执行路径的桩点数据流组成的动态路径;步骤4,根据函数对象列表和控制关键字对象列表提供的信息,对步骤3获得的动态路径进行拆分,得到测试用例所覆盖的函数调用路径子集;步骤5,将函数调用路径子集与函数调用基本路径集进行匹配,确保函数调用路径子集是属于函数调用基本路径集的子集;步骤6,将所有函数调用路径子集作为一个动态路径集,优化该动态路径集;步 ...
【技术特征摘要】
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。