Class mutation operators for C++ object-oriented systems

Pedro Delgado-Pérez*, Inmaculada Medina-Bulo, Juan José Domínguez-Jiménez, Antonio García-Domínguez, Francisco Palomo-Lozano

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review


Mutation testing is a fault injection testing technique around which a great variety of studies and tools for different programming languages have been developed. Nevertheless, the mutation testing research with respect to C++ is pending. This paper proposes a set of class mutation operators related to this language and its particular object-oriented (OO) features. In addition, an implementation technique to apply mutation testing based on the traversal of the abstract syntax tree (AST) is presented. Finally, an experiment is conducted to study the operator behaviour with different C++ programs, suggesting their usefulness in the creation of complete test suites. The analysis includes a Web service (WS) library, one of the domains where this technique can prove useful, considering its challenging testing phase and that C++ is still a reference language for critical distributed systems WS.

Original languageEnglish
Pages (from-to)137-148
Number of pages12
JournalAnnales des Télécommunications
Issue number3-4
Publication statusPublished - Apr 2015

Bibliographical note

The final publication is available at Springer via


  • abstract syntax tree
  • C++
  • mutation operators
  • mutation testing
  • object-oriented programming
  • web services


Dive into the research topics of 'Class mutation operators for C++ object-oriented systems'. Together they form a unique fingerprint.

Cite this