Skip to main content

Table 11 μJava class mutation operator (adapted from Ma et al. (2005))

From: Correlating automatic static analysis and mutation testing: towards incremental strategies

Language feature

Operator

Description

Inheritance (8)

IHD

Hiding variable deletion

 

IHI

Hiding variable insertion

 

IOD

Overriding method deletion

 

IOP

Overriding method calling position change

 

IOR

Overriding method rename

 

ISI

super keyword insertion

 

ISD

super keyword deletion

 

IPC

Explicit call of a parent’s constructor deletion

Polymorphism (7)

PNC

new method call with child class type

 

PMD

Instance variable declaration with parent class type

 

PPD

Parameter variable declaration with child class type

 

PCI

Type cast operator insertion

 

PCD

Type cast operator deletion

 

PCC

Cast type change

 

PRV

Reference assignment with other comparable type

Overloading (3)

OMR

Overloading method contents change

 

OMD

Overloading method deletion

 

OAN

Argument number change

Java-Specific (6)

JTI

this keyword insertion

 

JTD

this keyword deletion

 

JSI

static modifier insertion

 

JSD

static modifier deletion

 

JID

Member variable initialization deletion

 

JDC

Java-supported default constructor creation

Common Programming Mistakes (4)

EOA

Reference assignment and content assignment replacement

 

EOC

Reference comparison and content comparison replacement

 

EAM

Accessor method change

 

EMM

Modifier method changes