[1]曾 奕.一种基于测试的消息竞争故障定位方法[J].南京师范大学学报(工程技术版),2018,(04):044.[doi:10.3969/j.issn.1672-1292.2018.04.007]
 Zeng Yi.Fault Localization Approach-Based Testing for Message Races[J].Journal of Nanjing Normal University(Engineering and Technology),2018,(04):044.[doi:10.3969/j.issn.1672-1292.2018.04.007]
点击复制

一种基于测试的消息竞争故障定位方法
分享到:

南京师范大学学报(工程技术版)[ISSN:1006-6977/CN:61-1281/TN]

卷:
期数:
2018年04期
页码:
044
栏目:
计算机工程
出版日期:
2018-12-30

文章信息/Info

Title:
Fault Localization Approach-Based Testing for Message Races
文章编号:
1672-1292(2018)04-0044-08
作者:
曾 奕
南京师范大学计算机科学与技术学院,江苏 南京 210023
Author(s):
Zeng Yi
School of Computer Science and Technology,Nanjing Normal University,Nanjing 210023,China
关键词:
并发不确定性错误定位消息竞争
Keywords:
concurrentnon-deterministicfault localizationmessage race
分类号:
TP311
DOI:
10.3969/j.issn.1672-1292.2018.04.007
文献标志码:
A
摘要:
针对并发程序中由消息竞争所引发的不确定性故障难以捕获与再现、定位结果不精确等问题,提出一种结合程序频域比对、Delta调试策略的故障定位方法. 该方法首先建立并发程序执行模型,定义同步序列描述程序执行路径的不确定性,并将其抽象成简洁的消息竞争序列; 而后收集、比对正确的测试执行与错误的测试执行中消息竞争序列间的差异,约简故障搜索空间,获得初始故障集合; 最后,为初始故障集合中所对应的每一个失效执行,采用Delta调试策略设计并运行一组附加测试,从而逐步精准地锁定故障根源. 初步实验结果表明,该方法能够有效检测消息竞争故障,提高故障定位效率.
Abstract:
A fault localization method,which combines the program spectrum with the Delta debugging strategy,is proposed to solve the problem on the non-deterministic failure caused by the message race which is difficult to capture,reproduce,and accurately locate. This method first builds a concurrent program execution model,defines the non-deterministic execution path with the synchronous sequence,and turns it into a concise message race sequence. Secondly,it collects and compares the difference of the message race sequence between the correct test execution and the error execution,reduces the fault search space,and obtains the initial fault set. In the end,for every failure in the initial fault set,the Delta debug strategy is used to design and run a set of additional tests to locate the root of the fault gradually. Preliminary experimental results show the effectiveness and feasibility of our method in locating non-deterministic failures for message passing programs.

参考文献/References:

[1] CHOI J D,ZELLER A. Isolating failure inducing thread schedules[C]//Proceedings of the ACM SIGSOFT International Symposium on Software Testing and Analysis. Rome,Italy,2002.
[2]DALLMEIER V,LINDIG C,ZELLER A. Lightweight defect localization for Java[C]//Proceedings of the 19th European Conference on Object-Oriented Programming. Glasgow,UK,2005.
[3]JONES J A,HARROLD M J. Empirical evaluation of the tarantula automatic to assist fault localization[C]//Proceedings of the 20th International Conference on Automated Software Engineering. California,USA,2005.
[4]YU Y,JONES J,HARROLD M J. An empirical study of the effects of test-suite reduction on fault localization[C]//Proceedings of the 30th International Conference on Software Engineering. Leipzig,Germany,2008.
[5]KOCA F,SOZER H,RUI A. Spectrum-based fault localization for diagnosing concurrency faults[C]//Proceedings of the 25th IFIP WG 6.1 International Conference on Test Software and systems. Istanbul,Turkey,2013.
[6]WONG W E,GAO R,LI Y,et al. A survey of software fault localization[J]. IEEE transactions on software engineering,2016,42(8):707-740.
[7]TANG C M,CHAN W K,YU Y T,et al. Accuracy graphs of spectrum-based fault localization formulas[J]. IEEE transactions on reliability,2017,66(2):403-424.
[8]ARTHO C. Iterative delta debugging[J]. International journal on software tools for technology transfer,2011,13(3):223-246.
[9]HAMMOUDI M,BURG B,BAE G,et al. On the use of delta debugging to reduce recordings and facilitate debugging of web applications[C]//Proceedings of the 10th Joint Meeting on Foundations of Software Engineering. Bergamo,Italy,2015.
[10]GROCE A,ALIPOUR M A,ZHANG C,et al. Cause reduction:delta debugging,even without bugs[J]. Software testing verification and reliability,2016,26(1):40-68.
[11]XU J,LEI Y,CARVER R. Using delta debugging to minimize stress tests for concurrent data structures[C]//Proceedings of the IEEE International Conference on Software Testing,Verification and Validation. Tokyo,Japan,2017.
[12]LIU C,FEI L,YAN X,et al. Statistical debugging:a hypothesis testing-based approach[J]. IEEE transactions on software engineering,2006,32(10):831-848.
[13]LI J. Nonparametric multivariate statistical process control charts:a hypothesis testing-based approach[J]. Journal of nonparametric statistics,2015,27(3):384-400.
[14]DING Z,WANG R,HU J,et al. Detecting bugs of concurrent programs with program invariants[C]//Proceedings of the IEEE International Conference on Software Quality,Reliability and Security Companion. Vienna,Austria,2016.
[15]SATO K,DONG H A,LAGUNA I,et al. Noise injection techniques to expose subtle and unintended message races[C]//Proceedings of the 22th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. Texas,USA,2017.
[16]LAMPORT L. Time,clocks,and the ordering of events in a distributed system[J]. Communications of the ACM,2008,21(7):558-565.

相似文献/References:

[1]辛云冰,张潜,费树岷,等.带有输入滞后和状态滞后的一类不确定系统的鲁棒控制[J].南京师范大学学报(工程技术版),2006,06(02):008.
 XIN Yunbing,ZHANG Qian,FEI Shumin.The Robust Control for a Class of Uncertain Systems with Delayed State and Input[J].Journal of Nanjing Normal University(Engineering and Technology),2006,06(04):008.

备注/Memo

备注/Memo:
收稿日期:2018-06-15.
通讯联系人:曾奕,讲师,研究方向:软件测试、软件调试. E-mail:05277@njnu.edu.cn
更新日期/Last Update: 2018-12-30