【技术实现步骤摘要】
本专利技术涉及软件测试领域,具体涉及一种基于控制流交集的缺陷自动定位装置及 其自动定位方法。
技术介绍
程序缺陷定位技术是指明一个有缺陷的程序产生异常行为原因的技术。程序缺陷 包括程序错误(error)和程序bug。传统的手工缺陷定位技术包括以下几个基本步骤在 程序中设置断点;再次执行程序;检测程序状态以定位产生不正确输出的原因。显然,这样 的缺陷定位方式耗费大量的时间、人力和物力。并且针对规模较大的程序,这样的工作手工 完成相当困难。因此,如何定位缺陷成为程序开发过程中的瓶颈。在自动缺陷定位领域,已有许多不同的技术被提出并应用到实践当中。总的来说, 这些技术可以被分为两类静态程序分析和动态缺陷定位。静态程序分析是指在不执行程 序的情况下,通过程序分析手段找出程序缺陷的技术。而动态缺陷定位技术是指在程序运 行时,通过检测程序行为发现缺陷的技术。静态程序分析的主要手段有代码走读、模型检测等。代码走读是指程序员逐行的 审查程序源码,显然,这仍然是一种耗费大量的时间、人力和物力的低效手段。模型检测是 指对被测程序建模,基于模型穷举程序所有可达的状态,并通过检测模型属性 ...
【技术保护点】
一种基于控制流交集的缺陷自动定位装置,其特征在于,该缺陷自动定位装置主要由类文件改装模块、测试执行模块、成功与失败分类模块、Trace文件解析模块、失败执行交集模块、排序模块以及源代码映射模块组成;类文件改装模块通过在相应的程序点自动加入相应的打印语句,对输入的所有被测Java类文件进行改装,并将改装后的Java类文件和输入的测试用例输出给测试执行模块;测试执行模块对所有测试用例执行改装后的Java类文件,收集每个测试用例输出的trace文件并输出给成功与失败分类模块;成功与失败分类模块根据测试执行模块中各测试用例执行结果正确与否将所有trace文件分为成功trace文件与 ...
【技术特征摘要】
【专利技术属性】
技术研发人员:叶钢,余丹,李重文,周家杰,马世龙,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:11[中国|北京]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。