Predictive Mutation Analysis via Natural Language Channel in Source Code
Mutation analysis can provide valuable insights into both System Under Test (SUT) and its test suite. However, it is not scalable due to the cost of building and testing a large number of mutants. Predictive Mutation Testing (PMT) has been proposed to reduce the cost of mutation testing, but it can only provide statistical inference about whether a mutant will be killed or not by the entire test suite. We propose Seshat, a Predictive Mutation Analysis (PMA) technique that can accurately predict the entire kill matrix, not just the mutation score of the given test suite. Seshat exploits the natural language channel in code, and learns the relationship between the syntactic and semantic concepts of each test case and the mutants it can kill, from a given kill matrix. The learnt model can later be used to predict the kill matrices for subsequent versions of the program, even after both the source and test code have changed significantly. Empirical evaluation using the programs in the Defects4J shows that Seshat can predict kill matrices with the average F-score of 0.83 for versions that are up to years apart. This is an improvement of F-score by 0.14 and 0.45 point over the state-of-the-art predictive mutation testing technique, and a simple coverage based heuristic, respectively. Seshat also performs as well as PMT for the prediction of the mutation score only. When applied to a Mutation Based Fault Localisation (MBFL) technique, the predicted kill matrix by Seshat is successfully used to locate faults within the top ten position, showing its usefulness beyond prediction of mutation scores. Once Seshat trains its model using a concrete mutation analysis, the subsequent predictions made by Seshat are on average 39 times faster than actual test-based analysis. We also show that Seshat can be successfully applied to automatically generated test cases with an experiment using EvoSuite.
Fri 19 MayDisplayed time zone: Hobart change
13:45 - 15:15 | Fault injection and mutationJournal-First Papers / NIER - New Ideas and Emerging Results / SEIP - Software Engineering in Practice / DEMO - Demonstrations / Technical Track at Meeting Room 105 Chair(s): Lingxiao Jiang Singapore Management University | ||
13:45 15mTalk | Coverage Guided Fault Injection for Cloud Systems Technical Track Yu Gao Institute of Software, Chinese Academy of Sciences, China, Wensheng Dou Institute of Software Chinese Academy of Sciences, Dong Wang Institute of software, Chinese academy of sciences, Wenhan Feng Institute of Software Chinese Academy of Sciences, Jun Wei Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences; University of Chinese Academy of Sciences Chongqing School, Hua Zhong Institute of Software Chinese Academy of Sciences, Tao Huang Institute of Software Chinese Academy of Sciences Pre-print | ||
14:00 15mTalk | Diver: Oracle-Guided SMT Solver Testing with Unrestricted Random Mutations Technical Track | ||
14:15 15mTalk | Identifying Defect Injection Risks from Analysis and Design Diagrams: An Industrial Case Study at Sony SEIP - Software Engineering in Practice Yoji Imanishi Sony Global Manufacturing&Operations, Kazuhiro Kumon Sony Global Manufacturing&Operations, Shuji Morisaki Nagoya University | ||
14:30 7mTalk | DaMAT: A Data-driven Mutation Analysis Tool DEMO - Demonstrations Enrico Viganò University of Luxembourg, Oscar Cornejo SnT Centre, University of Luxembourg, Fabrizio Pastore University of Luxembourg, Lionel Briand University of Luxembourg; University of Ottawa Pre-print | ||
14:37 7mTalk | Mutation testing in the wild: findings from GitHub Journal-First Papers Ana B. Sánchez University of Seville, Pedro Delgado-Pérez Universidad de Cádiz, Inmaculada Medina-Bulo Universidad de Cádiz, Sergio Segura University of Seville Link to publication DOI | ||
14:45 7mTalk | An Experimental Assessment of Using Theoretical Defect Predictors to Guide Search-Based Software Testing Journal-First Papers Anjana Perera Oracle Labs, Australia, Aldeida Aleti Monash University, Burak Turhan University of Oulu, Marcel Böhme MPI-SP, Germany and Monash University, Australia Link to publication DOI | ||
14:52 7mTalk | Assurance Cases as Data: A Manifesto NIER - New Ideas and Emerging Results Claudio Menghi McMaster University, Canada, Torin Viger , Alessio Di Sandro University of Toronto, Chris Rees Critical Systems Labs, Jeffrey Joyce Critical System Labs Inc., Marsha Chechik University of Toronto | ||
15:00 7mTalk | Predictive Mutation Analysis via Natural Language Channel in Source Code Journal-First Papers Jinhan Kim KAIST, Juyoung Jeon Handong Global University, Shin Hong Handong Global University, Shin Yoo KAIST Link to publication Pre-print |