首页> 外文会议>11th International Conference on Quality Software >Spectrum-Based Fault Localization: Testing Oracles are No Longer Mandatory
【24h】

Spectrum-Based Fault Localization: Testing Oracles are No Longer Mandatory

机译:基于频谱的故障定位:不再需要测试Oracle

获取原文
获取外文期刊封面目录资料

摘要

Spectrum-based Fault Localization (SBFL) is one of the most popular approaches for locating software faults, and has received much attention because of its simplicity and effectiveness. It utilizes the execution result of each test case (failure or pass) and the corresponding coverage information to evaluate the likelihood of each program entity (e.g., a statement or a predicate) being faulty. Different formulas for computing such likelihood have been proposed based on different intuitions. All existing SBFL techniques have assumed the existence of a testing oracle, that is, a mechanism which can determine whether the execution of a test case fails or passes. However, such an assumption does not always hold. Recently, metamorphic testing has been proposed to alleviate the oracle problem. Thus, it is a natural extension to investigate how it can help SBFL techniques to locate faults even without using a testing oracle. Based on the framework of metamorphic testing, we have developed a novel concept of mice as a counterpart of the slice used in the current SBFL techniques. More precisely, in the absence of a testing oracle, we can determine whether an expected characterization of the program is satisfied. The outcomes of dissatisfaction or satisfaction of an expected characterization are then regarded as the counterparts of failed or passed executions, respectively, when a testing oracle exists. Since our approach does not require the existence of a testing oracle, it significantly enhances the applicability of SBFL techniques. Case studies on three popular SBFL techniques (Tarantula, Ochiai and Jaccard) with 9 applications are reported to demonstrate the use of the proposed fault localization technique.
机译:基于频谱的故障定位(SBFL)是用于定位软件故障的最受欢迎的方法之一,并且由于其简单性和有效性而受到了广泛的关注。它利用每个测试用例(失败或通过)的执行结果以及相应的覆盖率信息来评估每个程序实体(例如,语句或谓词)出现故障的可能性。基于不同的直觉,已经提出了用于计算这种可能性的不同公式。现有的所有SBFL技术都假定存在测试预言,即一种可以确定测试用例执行失败还是通过的机制。但是,这种假设并不总是成立。近来,已经提出了变质测试来减轻甲骨文问题。因此,研究它如何能够帮助SBFL技术甚至在不使用测试预告片的情况下定位故障也是一种自然的扩展。基于变质测试的框架,我们开发了一种新颖的小鼠概念,将其作为当前SBFL技术中使用的切片的对应物。更准确地说,在没有测试预告片的情况下,我们可以确定是否满足程序的预期特征。当存在一个测试预言时,对预期特征的不满意或满意的结果分别被视为执行失败或通过的对应物。由于我们的方法不需要测试Oracle,因此大大提高了SBFL技术的适用性。据报道,对三种流行的SBFL技术(Tarantula,Ochiai和Jaccard)进行了9个应用的案例研究,以证明所提出的故障定位技术的使用。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号