Home // International Journal On Advances in Software, volume 5, numbers 3 and 4, 2012 // View article


Testing Object-Oriented Code Through a Specifications-Based Mutation Engine

Authors:
Pantelis Stylianos Yiasemis
Andreas Andreou

Keywords: mutation testing; mutation engine; specifications;

Abstract:
This paper presents a simple, yet efficient and effective mutation engine that can produce mutations of object-oriented source code written in the C# and Visual Basic languages. The engine produces mutants based on user selected mutation operators the number of which is bounded by the specifications declared in the source code with the aid of Code Contracts. The specifications are described using a set of pre- and post-conditions and invariants. The engine consists of four distinct and integrated components; a syntactic verification component, a static analysis component, a mutation generation component, and a test case quality assessment component. A series of experiments are conducted which show that the proposed engine is able to locate a fault and efficiently propose the proper correction. In addition, the scalability of the proposed approach is assessed in terms of time and performance with respect to different program sizes.

Pages: 179 to 190

Copyright: Copyright (c) to authors, 2012. Used with permission.

Publication date: December 31, 2012

Published in: journal

ISSN: 1942-2628