Automated fault-localization technique has become a hot topic in research fields of software engineering. However, most of techniques are based on single type prograrn node (e.g. statement, predicate, etc.) until now, when these techniques utilized to locate the corresponding types of errors, it has good performance in generally. But in other situation, the opposite is true. Therefore, we draw on the method of Integrated Learning in machine learning to contribute a fault-localization model which combines the information of statement-based coverage and predicate-based coverage method. In addition, three new fault-localization methods are proposed. The experimental results show that our methods have better effectiveness and adaptability for fault-localization than previous methods.%目前大多数错误定位技术的研究均基于单一类型的程序节点(如语句、谓词等),其效果往往只在定位相应类型的错误时表现较好,而定位其他类型的程序错误时则表现不佳。为此,借鉴机器学习领域中集成学习的思想,建立多错误定位方法相结合的错误定位模型,并综合了基于语句覆盖信息和程序谓词信息这2种错误定位方法,提出了3种新的错误定位方法。实验结果表明,相对于此前单一的方法,所提出的2种方法具有更高的错误定位效率和更强的适应性。
展开▼