Description of Method-level Mutation Operators for Java
暂无分享,去创建一个
This document provides a brief description of method-level mutation operators for Java used by muJava. When designing method-level mutation operators for Java, we followed the selective approach [1]. The selective results found that the traditional operatorso of modifying operands and statements give little effectiveness to mutation testing. Therefore, we only consider mutation operators that modify expression by replacing, deleting, and inserting primitive operators. muJava provides six kinds of primitive operators; (1) arithmetic operator, (2) relational operator, (3) conditional operator, (4) shift operator, (5) logical operator, and (6) assignment. For some of them, muJava provides short-cut operators. This section presents designs of mutation operators for those six kinds of primitive operators. We try to design mutation operators that replace, insert, and delete the primitive operators. We defined total 12 method-level operators in Table 1. The detailed description for the operators are described in the following subsections, according to each primitive operator.
[1] Roland H. Untch,et al. An Experimental Determination of Suucient Mutant Operators , 1996 .
[2] Gregg Rothermel,et al. An experimental determination of sufficient mutant operators , 1996, TSEM.
[3] Gregg Rothermel,et al. An Experimental Determination of Su cient Mutation Operators , 1994 .