A fitness function for evolutionary mutation testing of object-oriented programs

Muhammad Bilal Bashir, Aamer Nadeem · 2013

Mutation testing is a fault based testing technique that helps generating effective test cases for software under test. Mutation testing is computationally expensive by nature, which is the biggest hindrance in getting acceptability in Software industry. Evolutionary testing provides foundation to automate the test case generation process. Using evolutionary testing in conjunction with mutation testing can reduce computational cost and the whole process can be automated to facilitate testers. The existing techniques are incapable of handling object's state problem and they cannot identify logical software bugs that hide themselves in equivalent mutants. Neither they evaluate fitness for object's state variables separately nor do they use control flow for comparison. In this paper we propose a new fitness function for the evolutionary mutation testing that supports all object oriented features, guides the search by considering object's state separately, helps determining infection in the object's state at mutated statement, and reveals potential software bugs masked in equivalent mutants. Our initial experiments show that this novel fitness function can help minimizing mutation testing cost, reducing the number of equivalent mutants, providing better guidance to search, and improving effectiveness of test cases.

Read the paper · More papers on PaperTik