Mutation Testing in Continuous Integration: An Exploratory Industrial Case Study

被引:0
|
作者
Orgard, Jonathan [1 ]
Gay, Gregory [1 ]
de Oliveira Neto, Francisco Gomes [1 ]
Viggedal, Kim [2 ]
机构
[1] Univ Gothenburg, Chalmers, Gothenburg, Sweden
[2] Zenseact, Gothenburg, Sweden
关键词
Mutation Testing; Continuous Integration; C plus;
D O I
10.1109/ICSTW58534.2023.00063
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Despite its potential quality benefits, the cost of mutation testing and the immaturity of mutation tools for many languages have led to a lack of adoption in industrial software development. In an exploratory case study at Zenseact a company in the automotive domain we have explored how mutation testing could be effectively applied in a typical Continuous Integration-based workflow. We evaluated the capabilities of C++ mutation tools, and demonstrate their use in GitHub Actions based CI workflows. Our investigation reveals that Dextool and Mull could be used in a CI workflow. Additionally, we conducted an interview study to understand how developers would use mutation testing in their CI workflows. Based on our qualitative analysis and practices proposed in literature, we discuss recommendations to integrate mutation testing in a CI workflow. For instance, visualising trends in the mutation score enable practitioners to understand how test quality is evolving. Moreover, tools should have a balance between offering fast feedback and keeping or flagging relevant mutants. Lastly, practitioners raised the need that the mutation should be applied at commit level, and that developers inexperienced with mutation testing should be trained in the implications of the practice.
引用
收藏
页码:324 / 333
页数:10
相关论文
共 50 条
  • [21] Continuous integration and performance testing
    Haines, Steven
    DR DOBBS JOURNAL, 2008, 33 (03): : 36 - 38
  • [22] Communication channels in safety analysis: An industrial exploratory case study
    Wang, Yang
    Graziotin, Daniel
    Kriso, Stefan
    Wagner, Stefan
    JOURNAL OF SYSTEMS AND SOFTWARE, 2019, 153 : 135 - 151
  • [23] DeepOrder: Deep Learning for Test Case Prioritization in Continuous Integration Testing
    Sharif, Aizaz
    Marijan, Dusica
    Liaaen, Marius
    2021 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2021), 2021, : 525 - 534
  • [24] Using Continuous Integration Techniques in Open Source Projects-An Exploratory Study
    Wrobel, Michal R.
    Szymukowicz, Jaroslaw
    Weichbroth, Pawel
    IEEE ACCESS, 2023, 11 : 113848 - 113863
  • [25] Integration testing using interface mutation
    Delamaro, ME
    Maldonado, JC
    Mathur, AP
    SEVENTH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, PROCEEDINGS, 1996, : 112 - 121
  • [26] Interface mutation: An approach for integration testing
    Delamaro, ME
    Maldonado, JC
    Mathur, AP
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2001, 27 (03) : 228 - 247
  • [27] Distributed continuous process simulation:: An industrial case study
    Santos, Raul Alves
    Normey-Rico, Julio E.
    Merino Gomez, Alejandro
    Acebes Arconada, Luis Felipe
    de Prada Moraga, Cesar
    COMPUTERS & CHEMICAL ENGINEERING, 2008, 32 (06) : 1195 - 1205
  • [28] Stakeholder Perceptions of the Adoption of Continuous Integration - A Case Study
    Laukkanen, Eero
    Paasivaara, Maria
    Arvonen, Teemu
    2015 AGILE CONFERENCE, 2015, : 11 - 20
  • [29] Challenges when adopting continuous integration: A case study
    Debbiche, Adam, 1600, Springer Verlag (8892):
  • [30] Challenges When Adopting Continuous Integration: A Case Study
    Debbiche, Adam
    Diener, Mikael
    Svensson, Richard Berntsson
    PRODUCT-FOCUSED SOFTWARE PROCESS IMPROVEMENT, PROFES 2014, 2014, 8892 : 17 - 32