On guiding the augmentation of an automated test suite via mutation analysis

被引:0
|
作者
Ben H. Smith
Laurie Williams
机构
[1] North Carolina State University,Department of Computer Science
来源
关键词
Mutation testing; Line coverage; Fault injection; Empirical effectiveness; Test case augmentation; Mutation analysis; Mutation testing tool; Statement coverage; Test adequacy; Web application; Open source; Unit testing;
D O I
暂无
中图分类号
学科分类号
摘要
Mutation testing has traditionally been used as a defect injection technique to assess the effectiveness of a test suite as represented by a “mutation score.” Recently, mutation testing tools have become more efficient, and industrial usage of mutation analysis is experiencing growth. Mutation analysis entails adding or modifying test cases until the test suite is sufficient to detect as many mutants as possible and the mutation score is satisfactory. The augmented test suite resulting from mutation analysis may reveal latent faults and provides a stronger test suite to detect future errors which might be injected. Software engineers often look for guidance on how to augment their test suite using information provided by line and/or branch coverage tools. As the use of mutation analysis grows, software engineers will want to know how the emerging technique compares with and/or complements coverage analysis for guiding the augmentation of an automated test suite. Additionally, software engineers can benefit from an enhanced understanding of efficient mutation analysis techniques. To address these needs for additional information about mutation analysis, we conducted an empirical study of the use of mutation analysis on two open source projects. Our results indicate that a focused effort on increasing mutation score leads to a corresponding increase in line and branch coverage to the point that line coverage, branch coverage and mutation score reach a maximum but leave some types of code structures uncovered. Mutation analysis guides the creation of additional “common programmer error” tests beyond those written to increase line and branch coverage. We also found that 74% of our chosen set of mutation operators is useful, on average, for producing new tests. The remaining 26% of mutation operators did not produce new test cases because their mutants were immediately detected by the initial test suite, indirectly detected by test suites we added to detect other mutants, or were not able to be detected by any test.
引用
收藏
页码:341 / 369
页数:28
相关论文
共 50 条
  • [41] TauPad: Test Data Augmentation of Point Clouds by Adversarial Mutation
    Liu, Guandi
    Liu, Jiawei
    Zhang, Quanjun
    Fang, Chunrong
    Zhang, Xufan
    2022 ACM/IEEE 44TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: COMPANION PROCEEDINGS (ICSE-COMPANION 2022), 2022, : 212 - 216
  • [42] Prioritizing Test Inputs for Deep Neural Networks via Mutation Analysis
    Wang, Zan
    You, Hanmo
    Chen, Junjie
    Zhang, Yingyi
    Dong, Xuyuan
    Zhang, Wenbin
    2021 IEEE/ACM 43RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2021), 2021, : 397 - 409
  • [43] A test suite for parallel performance analysis tools
    Gerndt, Michael
    Mohr, Bernd
    Traeff, Jesper Larsson
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2007, 19 (11): : 1465 - 1480
  • [44] Test suite reduction based on dependence analysis
    Jourdan, Guy-Vincent
    Ritthiruangdech, Panitee
    Ural, Hasan
    Lect. Notes Comput. Sci., (1021-1030):
  • [45] Test suite reduction based on dependence analysis
    Jourdan, Guy-Vincent
    Ritthiruangdech, Panitee
    Ural, Hasan
    COMPUTER AND INFORMATION SCIENCES - ISCIS 2006, PROCEEDINGS, 2006, 4263 : 1021 - +
  • [46] Classifying Test Suite Effectiveness via Model Inference and ROBBDs
    Felbinger, Hermann
    Pill, Ingo
    Wotawa, Franz
    TESTS AND PROOFS, TAP 2016, 2016, 9762 : 76 - 93
  • [47] A Revisit of the Integration of Metamorphic Testing and Test Suite Based Automated Program Repair
    Jiang, Mingyue
    Chen, Tsong Yueh
    Kuo, Fei-Ching
    Ding, Zuohua
    Choi, Eun-Hye
    Mizuno, Osamu
    2017 IEEE/ACM 2ND INTERNATIONAL WORKSHOP ON METAMORPHIC TESTING (MET 2017), 2017, : 14 - 20
  • [48] A correlation study between automated program repair and test-suite metrics
    Jooyong Yi
    Shin Hwei Tan
    Sergey Mechtaev
    Marcel Böhme
    Abhik Roychoudhury
    Empirical Software Engineering, 2018, 23 : 2948 - 2979
  • [49] A Correlation Study between Automated Program Repair and Test-Suite Metrics
    Yi, Jooyong
    Tan, Shin Hwei
    Mechtaev, Sergey
    Bohme, Marcel
    Roychoudhury, Abhik
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2018, : 24 - 24
  • [50] A correlation study between automated program repair and test-suite metrics
    Yi, Jooyong
    Tan, Shin Hwei
    Mechtaev, Sergey
    Bohme, Marcel
    Roychoudhury, Abhik
    EMPIRICAL SOFTWARE ENGINEERING, 2018, 23 (05) : 2948 - 2979