Faster Mutation Analysis with Fewer Processes and Smaller Overheads

被引:5
作者
Wang, Bo [1 ,2 ,3 ]
Lu, Sirui [4 ,5 ]
Xiong, Yingfei [4 ,5 ]
Liu, Feng [1 ]
机构
[1] Beijing Jiaotong Univ, Sch Comp & Informat Technol, Beijing, Peoples R China
[2] Beijing Key Lab Traff Data Anal & Min, Beijing, Peoples R China
[3] CAAC Key Lab Intelligent Passenger Serv Civil Avi, Beijing, Peoples R China
[4] Peking Univ, Key Lab High Confidence Software Technol, MoE, Beijing, Peoples R China
[5] Peking Univ, Dept Comp Sci & Technol, EECS, Beijing, Peoples R China
来源
2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING ASE 2021 | 2021年
基金
中国国家自然科学基金;
关键词
software testing; dynamic analysis; mutation analysis; mutation testing; fork-based mutation analysis;
D O I
10.1109/ASE51524.2021.9678827
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Mutation analysis is a powerful dynamic approach that has many applications, such as measuring the quality of test suites or automatically locating faults. However, the inherent low scalability hampers its practical use. To accelerate mutation analysis, researchers propose approaches to reduce redundant executions. A family of fork-based approaches tries to share identical executions among mutants. Fork-based approaches carry all mutants in one process and decide whether to fork new child processes when reaching a mutated statement. The mutants carried by the parent process are split into groups and distributed to different processes to finish the remaining executions. However, existing fork-based approaches have two limitations: (1) the limited analysis scope on a single statement to compare and cluster mutants prevents their systems from detecting more equivalent mutants, and (2) the interpretation of the mutants and the runtime equivalence analysis introduce significant overhead. In this paper, we present a novel fork-based mutation analysis approach WinMut, which (1) groups mutants in a scope of mutated statements and, (2) removes redundant computations inside interpreters. WinMut not only reduces the number of invoked processes but also has a lower cost for executing a single process. Our experiments show that our approach can further accelerate mutation analysis with an average speedup of 5.57x on top of the state-of-the-art fork-based approach, AccMut.
引用
收藏
页码:381 / 393
页数:13
相关论文
共 50 条
  • [41] Mutation analysis for evaluating code translation
    Giovani Guizzo
    Jie M. Zhang
    Federica Sarro
    Christoph Treude
    Mark Harman
    Empirical Software Engineering, 2024, 29
  • [42] An Analysis and Survey of the Development of Mutation Testing
    Jia, Yue
    Harman, Mark
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2011, 37 (05) : 649 - 678
  • [43] Towards Mutation Analysis for Lustre Programs
    du Bousquet, Lydie
    Delaunay, Michel
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2008, 203 (04) : 35 - 48
  • [44] Mutation analysis for evaluating code translation
    Guizzo, Giovani
    Zhang, Jie M.
    Sarro, Federica
    Treude, Christoph
    Harman, Mark
    EMPIRICAL SOFTWARE ENGINEERING, 2024, 29 (01)
  • [45] Fast and accurate incremental feedback for students' software tests using selective mutation analysis
    Kazerouni, Ayaan M.
    Davis, James C.
    Basak, Arinjoy
    Shaffer, Clifford A.
    Servant, Francisco
    Edwards, Stephen H.
    JOURNAL OF SYSTEMS AND SOFTWARE, 2021, 175
  • [46] Mutation analysis of urea cycle disorders
    Rilfenacht, Veronique
    Haberle, Johannes
    JOURNAL OF PEDIATRIC BIOCHEMISTRY, 2014, 4 (01) : 33 - 43
  • [47] A mutation analysis tool for Java programs
    P. Chevalley
    P. Thévenod-Fosse
    International Journal on Software Tools for Technology Transfer, 2003, 5 (1) : 90 - 103
  • [48] Towards Mutation Analysis for Use Cases
    Zhang, Huihui
    Yue, Tao
    Ali, Shaukat
    Liu, Chao
    19TH ACM/IEEE INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS (MODELS'16), 2016, : 363 - 373
  • [49] Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results in the Space Domain
    Cornejo, Oscar
    Pastore, Fabrizio
    Briand, Lionel C.
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2022, 48 (10) : 3913 - 3939
  • [50] A systematic literature review of how mutation testing supports quality assurance processes
    Zhu, Qianqian
    Panichella, Annibale
    Zaidman, Andy
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2018, 28 (06)