版权所有:内蒙古大学图书馆 技术提供:维普资讯• 智图
内蒙古自治区呼和浩特市赛罕区大学西街235号 邮编: 010021
作者机构:Harbin Inst Technol Sch Comp Sci & Technol Harbin Heilongjiang Peoples R China Harbin Univ Sch Informat Engn Harbin Heilongjiang Peoples R China Univ Pittsburgh Sch Med Dept Radiol Pittsburgh PA USA
出 版 物:《FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE》 (下代计算机系统)
年 卷 期:2019年第94卷
页 面:549-563页
核心收录:
学科分类:08[工学] 0812[工学-计算机科学与技术(可授工学、理学学位)]
基 金:National Key R&D Program of China [2018YFB1004800] National Natural Science Foundation of China Harbin science and technology innovation talents research project, China [2016RAQXJ013]
主 题:Software fault localization Program invariant Error propagation Test case selection
摘 要:Software intelligence is gradually becoming an interdisciplinary field with cognitive science and other disciplines. Especially in the mission-critical areas, whether the behavior of intelligent software conforms to expectations is a crucial issue. Program invariant based fault localization methods can obtain the desired behavior of the program by learning the execution information of successful test cases, and localize bugs by detecting invariant violations, which helps developers understand the cause of the failure and improve the quality of the software. This paper studies the problems of the existing methods, such as the limitation of the invariant definition, the lack of analysis on the impact of test cases and the error propagation, and tires to reduce the false negatives and false positives of invariant violation detection. First, the definition of the program invariants is enriched to localize more types of bugs. Then, the optimization strategies of reducing false positives and false negatives are studied. On the Siemens benchmark, we carried out incremental experimental analysis of the optimization strategies. The experimental results have shown that compared with the simple value range invariant based method, after performing the optimization strategies, the NScore value was increased by 75.2%, which means that our method can effectively localize more kinds of bugs. When reviewing the same percentage of code, the ratio of localized buggy versions of our method is significantly higher than that of the spectra based methods. When reviewing 1% of the code with the worst effectiveness, the ratio of localized buggy versions of our method is about 0.6, and the ratio value of the spectra-based method is about 0.2. (C) 2018 Elsevier B.V. All rights reserved.