计算机应用 ›› 2016, Vol. 36 ›› Issue (11): 3170-3177.DOI: 10.11772/j.issn.1001-9081.2016.11.3170
吴俞伯, 郭俊霞, 李征, 赵瑞莲
收稿日期:
2016-04-21
修回日期:
2016-06-02
发布日期:
2016-11-12
出版日期:
2016-11-10
通讯作者:
赵瑞莲
作者简介:
吴俞伯(1989-),男,海南儋州人,硕士研究生,主要研究方向:软件测试;郭俊霞(1977-),女,山西朔州人,讲师,博士,主要研究方向:网络信息定向抽取;李征(1974-),男,河北清苑人,教授,博士,CCF会员,主要研究方向:软件测试、模型切片;赵瑞莲(1964-),女,山西忻州人,教授,博士,CCF会员,主要研究方向:软件测试、软件可靠性分析。
基金资助:
WU Yubo, GUO Junxia, LI Zheng, ZHAO Ruilian
Received:
2016-04-21
Revised:
2016-06-02
Online:
2016-11-12
Published:
2016-11-10
Supported by:
摘要: 针对并发程序变异测试中并发变异算子触发数据竞争故障能力较低的问题,提出了基于数据竞争故障的变异策略。从并发变异算子设计的角度给出了面向锁对象的变异策略(LMS)和面向共享变量的变异策略(SMS),设计了重置同步锁(SLRO)和移出共享变量操作(MSVO)两个并发变异算子。从变异点选取的角度给出了一种同步关系对变异点选取策略(SMPSS)。在12个Java类库并发程序上,应用SLRO和MSVO算子针对SMPSS选取出的变异点植入故障,生成变异体,并使用JPF检测工具,检测生成的变异体引发数据竞争故障的能力。实验结果表明,新设计的SLRO和MSVO变异算子对12个被测程序分别生成了121和122个有效变异体,变异算子的有效性分别为95.28%和99.19%。由此可知,新设计的并发变异算子能有效触发数据竞争故障。
中图分类号:
吴俞伯, 郭俊霞, 李征, 赵瑞莲. 基于并发程序数据竞争故障的变异策略[J]. 计算机应用, 2016, 36(11): 3170-3177.
WU Yubo, GUO Junxia, LI Zheng, ZHAO Ruilian. Mutation strategy based on concurrent program data racing fault[J]. Journal of Computer Applications, 2016, 36(11): 3170-3177.
[1] JIA Y, HARMAN M. An analysis and survey of the development of mutation testing[J]. IEEE Transactions on Software Engineering, 2011, 37(5):649-678. [2] SUN C A, XUE F F, LIU H, et al. A path-aware approach to mutant reduction in mutation testing[J]. Information and Software Technology, 2016(3):1-17. [3] BRADBURY J S, CORDY J R, DINGEL J. Mutation operators for concurrent Java (J2SE 5.0)[C]//Proceedings of the 2nd Workshop on Mutation Analysis. Piscataway, NJ:IEEE, 2006:11. [4] WU L, KAISER G. Empirical study of concurrency mutation operators for Java[EB/OL].[2016-04-21]. http://academiccommons.columbia.edu/item/ac:133611. [5] GLIGORIC M, ZHANG L, PEREIRA C, et al. Selective mutation testing for concurrent code[C]//Proceedings of the 2013 International Symposium on Software Testing and Analysis. New York:ACM, 2013:224-234. [6] NG N, YOSHIDA N. Static deadlock detection for concurrent go by global session graph synthesis[C]//Proceedings of the 25th International Conference on Compiler Construction. New York:ACM, 2016:174-184. [7] ZENG R, SUN Z, LIU S, et al. A method for improving the precision and coverage of atomicity violation predictions[C]//Proceedings of the 21st International Conference on Tools and Algorithms for the Construction and Analysis of Systems. Berlin:Springer, 2015:116-130. [8] KAHLON V, SANKARANARAYANAN S, GUPTA A. Static analysis for concurrent programs with applications to data race detection[J]. International Journal on Software Tools for Technology Transfer, 2013, 15(4):321-336. [9] DI P, SUI Y. Accelerating dynamic data race detection using static thread interference analysis[C]//Proceedings of the 7th International Workshop on Programming Models and Applications for Multicores and Manycores. New York:ACM, 2016:88-99. [10] OTTO F, MOSCHNY T. Finding synchronization defects in Java programs:extended static analyses and code patterns[C]//Proceedings of the 1st International Workshop on Multicore Software Engineering. New York:ACM, 2008:41-46. [11] SCHULER D, ZELLER A. Javalanche:efficient mutation testing for Java[C]//Proceedings of the 7th Joint Meeting of the European software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering. New York:ACM, 2009:297-298. [12] MEHLITZ P, RUNGTA N, VISSER W. A hands-on Java Pathfinder tutorial[C]//Proceedings of the 201335th International Conference on Software Engineering. Piscataway, NJ:IEEE, 2013:1493-1495. [13] GLIGORIC M, JAGANNATH V, MARINOV D. MuTMuT:Efficient exploration for mutation testing of multithreaded code[C]//Proceedings of the 2010 Third International Conference on Software Testing, Verification and Validation. Piscataway, NJ:IEEE, 2010:55-64. [14] JAGANNATH V, GLIGORIC M, JIN D, et al. Improved multi-threaded unit testing[C]//Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering. New York:ACM, 2011:223-233. |
[1] | 高威 刘丽华 和斌涛 邓方安. 区块链共识机制与改进算法研究进展[J]. 《计算机应用》唯一官方网站, 0, (): 0-0. |
[2] | 翟社平 朱鹏举 杨锐 刘佳一腾. 基于区块链的物联网身份管理系统[J]. 《计算机应用》唯一官方网站, 0, (): 0-0. |
[3] | 蔡锦辉, 尹中旭, 宗国笑, 李俊儒. 面向嵌套分支突破的推断与污点分析融合的方法[J]. 《计算机应用》唯一官方网站, 2024, 44(12): 3823-3830. |
[4] | 李博, 黄建强, 黄东强, 王晓英. 基于异构平台的稀疏矩阵向量乘自适应计算优化[J]. 《计算机应用》唯一官方网站, 2024, 44(12): 3867-3875. |
[5] | 陈姿芊, 牛科迪, 姚中原, 斯雪明. 适用于物联网的区块链轻量化技术综述[J]. 《计算机应用》唯一官方网站, 2024, 44(12): 3688-3698. |
[6] | 高婷婷, 姚中原, 贾淼, 斯雪明. 链上链下一致性保护技术综述[J]. 《计算机应用》唯一官方网站, 2024, 44(12): 3658-3668. |
[7] | 贾淼, 姚中原, 祝卫华, 高婷婷, 斯雪明, 邓翔. 零知识证明赋能区块链的进展与展望[J]. 《计算机应用》唯一官方网站, 2024, 44(12): 3669-3677. |
[8] | 牛科迪, 李敏, 姚中原, 斯雪明. 面向物联网的区块链共识算法综述[J]. 《计算机应用》唯一官方网站, 2024, 44(12): 3678-3687. |
[9] | 杨巍 白璐 宁俊义 董建军 单春海 信俊昌. 异构环境感知的幂律图流划分方法[J]. 《计算机应用》唯一官方网站, 0, (): 0-0. |
[10] | 梁辰 王奕森 魏强 杜江. 基于Transformer-GCN的源代码漏洞检测方法[J]. 《计算机应用》唯一官方网站, 0, (): 0-0. |
[11] | 吴海峰 陶丽青 程玉胜. 集成特征注意力和残差连接的偏标签回归算法[J]. 《计算机应用》唯一官方网站, 0, (): 0-0. |
[12] | 秦学程 刘春颜 李宝 赵蕴龙. 面向工业场景的云边协同数据存储与检索架构[J]. 《计算机应用》唯一官方网站, 0, (): 0-0. |
[13] | 涂进兴, 李志雄, 黄建强. 基于GPU对角稀疏矩阵向量乘法的动态划分算法[J]. 《计算机应用》唯一官方网站, 2024, 44(11): 3521-3529. |
[14] | 曾蠡, 杨婧如, 黄罡, 景翔, 罗超然. 超图应用方法综述:问题、进展与挑战[J]. 《计算机应用》唯一官方网站, 2024, 44(11): 3315-3326. |
[15] | 崔双双 王宏志 朱加昊 吴昊. 面向低能耗高性能的分类器两阶段数据选择方法[J]. 《计算机应用》唯一官方网站, 0, (): 0-0. |
阅读次数 | ||||||
全文 |
|
|||||
摘要 |
|
|||||