Differences between muJava, version I and II

Return to main page for current version.

This page summarizes the differences in mutation operators between muJava version I and muJava version II. The operators that changed are highlighted in yellow.

 

I. Class Mutation Operators

Version I Version II Comment
IHDIHD 
IHIIHI 
IODIOD 
IOPIOP 
IORIOR 
ISKISIsubdivide into insertion, deletion
ISD
IPCIPC 
PNCPNC 
PMDPMD 
PPDPPD 
 PCInewly defined for type casting
 PCC
 PCD
PRVPRV 
OMROMR 
OMDOMD 
OAOOANcombined
OAN
JTDJTIsubdivided into insertion and deletion
JTD
JSCJSIsubdivided into insertion and deletion
JSD
JIDJID 
JDCJDC 
EOAEOA 
EOCEOC 
EAMEAM 
EMMEMM 
 

II. Method (Traditional) Mutation Operators

Version I Version II Comment
ABS deleted, but modeled by AOD_unary and AOI_unary (-A -> A, A -> -A)
AORAOR_binary 
AOR_short-cut 
 AOI_short-cut 
 AOD_short-cut 
RORROR 
LCRCORJava uses conditional operators
 CODConditional operator deletion
 COIConditional operator insertion
 SORShift operator replacement
 LORIn Java, conditional operators are used in bitwise operations
 LOILogical operator deletion
 LODLogical operator insertion
 ASR_short-cutassignment operator replacement
UOIAOI_unaryUnary arithmetic operator insertion
 AOD_unaryUnary arithmetic operator deletion