scholarly journals Assessment of C++ object-oriented mutation operators: A selective mutation approach

2017 ◽  
Vol 27 (4-5) ◽  
pp. e1630 ◽  
Author(s):  
Pedro Delgado-Pérez ◽  
Sergio Segura ◽  
Inmaculada Medina-Bulo
Author(s):  
Shweta Rani ◽  
Bharti Suri

Mutation testing is a successful and powerful technique, specifically designed for injecting the artificial faults. Although it is effective at revealing the faults, test suite assessment and its reduction, however, suffer from the expense of executing a large number of mutants. The researchers have proposed different types of cost reduction techniques in the literature. These techniques highly depend on the inspection of mutation operators. Several metrics have been evolved for the same. The selective mutation technique is most frequently used by the researchers. In this paper, the authors investigate different metrics for evaluating the traditional mutation operators for Java. Results on 13 Java programs indicate how grouping few operators can impact the effectiveness of an adequate and minimal test suite, and how this could provide several cost benefits.


2014 ◽  
Vol 70 (3-4) ◽  
pp. 137-148 ◽  
Author(s):  
Pedro Delgado-Pérez ◽  
Inmaculada Medina-Bulo ◽  
Juan José Domínguez-Jiménez ◽  
Antonio García-Domínguez ◽  
Francisco Palomo-Lozano

Author(s):  
Macario Polo ◽  
Mario Piattini

This chapter presents a new testing technique called “test-case mutation.” The idea is to apply a set of specific mutation operators to test cases for object-oriented software, which produces different versions of the original test cases. Then, the results of the original test case and of its corresponding mutants are compared; if they are very similar, the technique highlights the possible presence of a fault in the class under test. The technique seems useful for testing the correctness of strongly constrained classes. The authors have implemented a supporting tool that is also described in the chapter.


2014 ◽  
Vol 2014 ◽  
pp. 1-16 ◽  
Author(s):  
Monalisa Sarma

In general, modern programs are large and complex and it is essential that they should be highly reliable in applications. In order to develop highly reliable software, Java programming language developer provides a rich set of exceptions and exception handling mechanisms. Exception handling mechanisms are intended to help developers build robust programs. Given a program with exception handling constructs, for an effective testing, we are to detect whether all possible exceptions are raised and caught or not. However, complex exception handling constructs make it tedious to trace which exceptions are handled and where and which exceptions are passed on. In this paper, we address this problem and propose a mutation analysis approach to develop reliable object-oriented programs. We have applied a number of mutation operators to create a large set of mutant programs with different type of faults. We then generate test cases and test data to uncover exception related faults. The test suite so obtained is applied to the mutant programs measuring the mutation score and hence verifying whether mutant programs are effective or not. We have tested our approach with a number of case studies to substantiate the efficacy of the proposed mutation analysis technique.


Author(s):  
Pedro Delgado-Pérez ◽  
Inmaculada Medina-Bulo ◽  
Juan José Domínguez-Jiménez

Mutation testing is a suitable technique to determine the quality of test suites designed for a certain program. The set of mutation operators and the overall technique should be developed around each programming language in particular. The structures related to the object-oriented paradigm require a tailored analysis addressing them. However, class mutation operators for these languages have not been analyzed at the same extent as traditional operators for procedural languages in the literature. The purpose of the chapter is to look in depth at the development and the current state of mutation testing, and more specifically, with regard to object-oriented programming languages.


Author(s):  
Pedro Delgado-Pérez ◽  
Inmaculada Medina-Bulo ◽  
Juan José Domínguez-Jiménez

Mutation testing is a suitable technique to determine the quality of test suites designed for a certain program. The set of mutation operators and the overall technique should be developed around each programming language in particular. The structures related to the object-oriented paradigm require a tailored analysis addressing them. However, class mutation operators for these languages have not been analyzed at the same extent as traditional operators for procedural languages in the literature. The purpose of the chapter is to look in depth at the development and the current state of mutation testing, and more specifically, with regard to object-oriented programming languages.


Sign in / Sign up

Export Citation Format

Share Document