¡¡Chinese Journal of Computers   Full Text
  TitleA New Approach to Automated Test Data Generation in Mutation Testing
  AuthorsSHAN Jin-Hui1),2) GAO You-Feng1) LIU Ming-Hao1) LIU Jiang-Hong1) ZHANG Lu1) SUN Jia-Su1)
  Address1)(Institute of Software, School of Electronics Engineering and Computer Science, Peking University, Beijing 100871)
2)(No.14, P.O. Box 15, Sub-post Office 27, Lanzhou 732750)
  Year2008
  IssueNo.6(1025¡ª1034)
  Abstract &
  Background
Abstract Mutation testing is an effective software testing method, which generates mutants by applying mutation operators to simulate software defects systematically, and then a test suit is constructed to kill these mutants. It will improve the efficiency and effectiveness in mutation testing to generate test data to kill mutants automatically. The existing approaches generate test datum for killing a single mutant. According to the observation that the conditions of killing multiple same-location mutants are of similar, a new approach is proposed in this paper, which combines these same-location mutants¡¯ conditions, then test datum which may kill more mutants is generated. A prototype is developed, on which experiments are carried out to validate the effectiveness of the proposed approach.
Keywords mutation testing; mutant; test data; adequacy criterion
Background This work is completed under a grant from the National Science Foundation of China, Contract Based Component Testability Design and Active Testing Technologies (No.60373003), a grant from the State 863 High-Tech Program of China, Internet-based Component-library-centric Software Developing Platform(No.2004AA112070), a grant from the National 973 Key Basic Research and Development Program of China, Research on Theory and Methodology of Agent-based Middleware on Internet Platform(No.2002CB312000), and a grant from Chinese Postdoctoral Science Foundation, Research on Mutation Testing Technology and its Application to Component Interface Testing(No.2003034077). Mutation testing is an effective software testing method, which generates mutants by applying mutation operators to simulate software defects systematically, and then a test suit is constructed to kill these mutants. Mutation testing has the virtues of strong capability for defect detection, convenient and flexible operation, and high level of automation. Not only can mutation testing be used to detect software defects, but also it can measure the defect detection ability of a test suit, and evaluate the adequacy of testing. As a result, mutation testing has been applied to software unit testing, interface testing, object-oriented software testing, and contract testing. It will improves the efficiency and effectiveness in mutation testing to generate test data to kill mutants automatically. The existing approaches generate test datum for killing a single mutant, which leads to large cost in mutation testing. Since the reachability conditions of mutants mutated at the same location are the same and the necessity conditions of these mutants are of similar structure, a new approach is proposed in this paper to reduce the cost in mutation testing and improve the efficiency and effectiveness of test suit generation, which combines these same-location mutants¡¯ conditions, then generates test datum which may kill more mutants. A prototype is developed, on which experiments are carried out to validate the effectiveness of our approach.