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 条
  • [1] On guiding the augmentation of an automated test suite via mutation analysis
    Smith, Ben H.
    Williams, Laurie
    EMPIRICAL SOFTWARE ENGINEERING, 2009, 14 (03) : 341 - 369
  • [2] Automated Scalable Test-suite Augmentation for Evolving Software
    Santelices, Raul
    2009 31ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, COMPANION VOLUME, 2009, : 379 - 382
  • [3] Directed Test Suite Augmentation
    Xu, Zhihong
    Rothermel, Gregg
    APSEC 09: SIXTEENTH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2009, : 406 - 413
  • [4] Directed Test Suite Augmentation
    Xu, Zhihong
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 1110 - 1113
  • [5] Automating Test-Suite Augmentation
    Bloem, Roderick
    Koenighofer, Robert
    Roeck, Franz
    Tautschnig, Michael
    2014 14TH INTERNATIONAL CONFERENCE ON QUALITY SOFTWARE (QSIC 2014), 2014, : 67 - 72
  • [6] On the Use of Mutation Analysis for Evaluating Student Test Suite Quality
    Perretta, James
    DeOrio, Andrew
    Guha, Arjun
    Bell, Jonathan
    PROCEEDINGS OF THE 31ST ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2022, 2022, : 263 - 275
  • [7] Grading-Based Test Suite Augmentation
    Osei-Owusu, Jonathan
    Astorga, Angello
    Butler, Liia
    Xie, Tao
    Challen, Geoffrey
    34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019), 2019, : 226 - 229
  • [8] A Hybrid Directed Test Suite Augmentation Technique
    Xu, Zhihong
    Kim, Yunho
    Kim, Moonzoo
    Rothermel, Gregg
    22ND IEEE INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE), 2011, : 150 - 159
  • [9] TACO: Test Suite Augmentation for Concurrent Programs
    Yu, Tingting
    2015 10TH JOINT MEETING OF THE EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE 2015) PROCEEDINGS, 2015, : 918 - 921
  • [10] Directed test suite augmentation: an empirical investigation
    Xu, Zhihong
    Kim, Yunho
    Kim, Moonzoo
    Cohen, Myra B.
    Rothermel, Gregg
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2015, 25 (02): : 77 - 114