【技术实现步骤摘要】
本专利技术涉及一种动态的软件缺陷定位方法,特别是涉及,它是一种集成了概率分布判据和标准化类间距离计算的统计学软件缺陷定位方法。该方法属于软件测试
技术介绍
统计学软件缺陷定位方法(该方法本质上是一种算法,下文中出于习惯用法,一律用算法一词)通过比较程序运行成功和失败时程序单元执行谱的差异,来查找最有可能与程序缺陷有关的程序单元。在现有的统计学软件缺陷定位方法中,较有代表性的是Tarantula算法、CBI算法、SOBER算法(这些名称是算法的专利技术人命名,现在暂无中文名称)。Tarantula算法是哈 罗德等人在“一种利用可视化信息的缺陷定位方法”(详见2002年《第二十四届国际软件工程会议》)一文中提出的,其选择的插桩方法是语句插桩,即对所有可执行语句进行插桩,统计成功与失败测试用例对每条可执行语句的覆盖情况。该算法所基于的假设是如果一条可执行语句被所有失败测试用例覆盖而没有被成功测试用例覆盖,则该可执行语句越可疑。然而,程序中大多数语句都很少导致缺陷,针对所有可执行语句的缺陷定位不仅会造成信息的冗余,而且还会使缺陷定位成本增大。针对这个问题,本. ...
【技术保护点】
一种面向巧合一致性问题的统计学软件缺陷定位方法,其特征在于:该方法具体步骤如下:步骤一:对含有缺陷的程序进行插桩;插桩是为了获得特定程序节点在程序运行时的动态信息,这里对程序中的分支语句、返回语句以及数量对语句进行插桩,它通过插入布尔表达式即谓词来得以实现,桩函数要求在程序运行时输出谓词的动态执行信息,这里谓词的动态执行信息是指谓词的评估偏差;评估偏差的定义是:一次程序运行中谓词被判断为“真”的概率,用表达式来表示,其中,eT(pj,ri)和eF(pj,ri)分别表示程序第ri次运行时谓词pj被判断为“真”和判断为“假”的次数;需要注意的是,若谓词在某次程序运行中没有被执行 ...
【技术特征摘要】
【专利技术属性】
技术研发人员:郑征,郝鹏,张震宇,蔡开元,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。