Achieving scalable mutation-based generation of whole test suites

被引:74
|
作者
Fraser, Gordon [1 ]
Arcuri, Andrea [2 ]
机构
[1] Univ Sheffield, Dept Comp Sci, Sheffield S1 4DP, S Yorkshire, England
[2] Simula Res Lab, Certus Software V&V Ctr, Lysaker, Norway
关键词
Mutation testing; Test case generation; Search-based testing; Testing classes; Unit testing; TOOL;
D O I
10.1007/s10664-013-9299-z
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Without complete formal specification, automatically generated software tests need to be manually checked in order to detect faults. This makes it desirable to produce the strongest possible test set while keeping the number of tests as small as possible. As commonly applied coverage criteria like branch coverage are potentially weak, mutation testing has been proposed as a stronger criterion. However, mutation based test generation is hampered because usually there are simply too many mutants, and too many of these are either trivially killed or equivalent. On such mutants, any effort spent on test generation would per definition be wasted. To overcome this problem, our search-based EvoSuite test generation tool integrates two novel optimizations: First, we avoid redundant test executions on mutants by monitoring state infection conditions, and second we use whole test suite generation to optimize test suites towards killing the highest number of mutants, rather than selecting individual mutants. These optimizations allowed us to apply EvoSuite to a random sample of 100 open source projects, consisting of a total of 8,963 classes and more than two million lines of code, leading to a total of 1,380,302 mutants. The experiment demonstrates that our approach scales well, making mutation testing a viable test criterion for automated test case generation tools, and allowing us to analyze the relationship of branch coverage and mutation testing in detail.
引用
收藏
页码:783 / 812
页数:30
相关论文
共 50 条
  • [21] Mutation-based spreadsheet debugging
    Hofer, Birgit
    Wotawa, Franz
    [J]. 2013 IEEE INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING WORKSHOPS (ISSREW), 2013, : 132 - 137
  • [22] GraphPrior: Mutation-based Test Input Prioritization for Graph Neural Networks
    Dang, Xueqi
    Li, Yinghua
    Papadakis, Mike
    Klein, Jacques
    Bissyande, Tegawende F.
    Le Traon, Yves
    [J]. ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2024, 33 (01)
  • [23] Reduction of Test Suites Using Mutation
    Polo Usaola, Macario
    Reales Mateo, Pedro
    Perez Lamancha, Beatriz
    [J]. FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING, FASE 2012, 2012, 7212 : 425 - 438
  • [24] MuSim: Mutation-based Fault Localization Using Test Case Proximity
    Dutta, Arpita
    Jha, Amit
    Mall, Rajib
    [J]. INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2021, 31 (05) : 725 - 744
  • [25] Test Suites Based on Formal Models and Implementing Scalable Testing Process on Supercomputer
    Kotlyarov, Vsevolod
    Drobintsev, Pavel
    Voinov, Nikita
    Selin, Ivan
    Tolstoles, Alexey
    [J]. TOOLS AND METHODS OF PROGRAM ANALYSIS, 2018, 779 : 51 - 63
  • [26] Mutation-based genetic neural network
    Palmes, PP
    Hayasaka, T
    Usui, S
    [J]. IEEE TRANSACTIONS ON NEURAL NETWORKS, 2005, 16 (03): : 587 - 600
  • [27] MVP: A mutation-based validation paradigm
    Campos, J
    Al-Asaad, H
    [J]. HLDVT'05: TENTH ANNUAL IEEE INTERNATIONAL HIGH-LEVEL DESIGN VALIDATION AND TEST WORKSHOP, PROCEEDINGS, 2005, : 27 - 34
  • [28] How to improve a set of design validation data by using mutation-based test
    Serrestou, Youssef
    Beroulle, Vincent
    Robach, Chantal
    [J]. PROCEEDINGS OF THE 2006 IEEE WORKSHOP ON DESIGN AND DIAGNOSTICS OF ELECTRONIC CIRCUITS AND SYSTEMS, 2006, : 77 - +
  • [29] Test Suite Reduction for Self-organizing Systems: A Mutation-based Approach
    Reichstaller, Andre
    Eberhardinger, Benedikt
    Ponsar, Hella
    Knapp, Alexander
    Reif, Wolfgang
    [J]. 2018 IEEE/ACM 13TH INTERNATIONAL WORKSHOP ON AUTOMATION OF SOFTWARE TEST (AST), 2018, : 64 - 70
  • [30] Mutation-based Evolutionary Fault Localisation
    de-Freitas, Diogo M.
    Leitao-Junior, Plinio S.
    Camilo-Junior, Celso G.
    Harrison, Rachel
    [J]. 2018 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION (CEC), 2018, : 2291 - 2298