Title :
A novel approach to the design and implementation of mutation operators for object-oriented programming language
Author :
Qianqian Wang ; Haga, Hirohide
Author_Institution :
Grad. Sch. of Sci. & Eng., Doshisha Univ., Kyotanabe, Japan
Abstract :
Software testing allows programmers to determine and guarantee the quality of software system. It is one of the essential activities in software development process. Mutation analysis is a branch of software testing. It is classified as a fault-based software testing technology. Unlike other software testing technologies, mutation analysis assesses the quality of software test cases and therefore improves the efficiency of software testing by measuring and improving the quality of test cases set. Mutation analysis works by generating mutants, which describe the faults that may occur in the software programs, from original program. Mutants are generated by applying mutation operators on original software program. Mutation operator is a rule that specifies the syntactic variations of strings. There have been several works about mutation analysis support system for conventional languages such as C and FORTRAN. However, there are a few for object-oriented languages such as C++ and Java. This article aims to propose a novel approach to design and implement mutation operators for object-oriented programming language. The essential idea of proposed method is the usage of JavaML language as the intermediate representation to implement mutation operators: it first converts the original program into JavaML document; then implements mutation operator for JavaML document and gets the mutated JavaML document with the help of DOM - a tool to process JavaML document; finally it converts the mutated JavaML document into mutant program.
Keywords :
C++ language; FORTRAN; Java; object-oriented programming; program testing; software quality; C language; C++; DOM; Fortran language; JavaML language usage; fault-based software testing technology; mutant program; mutated JavaML document; mutation analysis; mutation analysis support system; mutation operator design; mutation operator implementation; object-oriented programming language; software development process; software programs; software system quality; software test case quality assessment; software testing efficiency improvement; syntactic string variations; test case set quality improvement; test case set quality measurement; Encapsulation; Java; Object oriented programming; Software; Software testing; XML; Mutation Analysis; Object Oriented Langauge; Software Testing; XML;
Conference_Titel :
Information and Communication Technologies (WICT), 2014 Fourth World Congress on
Print_ISBN :
978-1-4799-8114-4
DOI :
10.1109/WICT.2014.7077310