4 Conclusions and Future Work
In this paper, we conducted an experiment to investigate an important question in
mutation analysis. We compared the similarities between faults and all mutants, and
between faults and subsets of mutants. We confirmed that using a subset of mutants is
more appropriate than using all mutants when evaluating test cases.
In the future work, we plan to do the following research. Firstly, we will conduct
experiments on larger programs with more faulty versions. Secondly, we will apply
more selection techniques to extend our research. For example, in operator-based
selection, we will use Barbosa’s operators and Siami Namin’s operators, and use
other algorithms in clustering-based selection. Thirdly, we will do more research to
deeply explain the phenomenon in detail that using the subset of mutants is better
than using all mutants when evaluating test cases. Finally, we will figure out which
selection technique should we use when we want to select a subset of mutants from
all mutants. We propose to apply more programs with different sizes and structures to
answer this question.
Acknowledgements
The work described in this article was partially supported by the National Natural
Science Foundation of China (90818027, 60803007, 60803008, 61003024), the Fun-
damental Research Funds for the Central Universities.
References
1. Andrews, J. H., Briand, L. C., and Labiche, Y. (2005). Is mutation an appropriate tool for
testing experiments? ICSE 2005: 402-411.
2. Delamaro, M. E. and Maldonado, J. C. (1996) Proteum – A Tool for the Assessment of
Test Adequacy for C Programs – User’s guide.
3. DeMillo, R. A., Lipton, R. J., and Sayward, F. G. (1978). Hints on Test Data Selection:
Help for the Practicing Programmer. Computer 11(4): 34–41 (1978).
4. Do, H., Elbaum, S. G., Rothermel, G. (2005). Supporting Controlled Experimentation with
Testing Techniques: An Infrastructure and its Potential Impact. Empirical Software Engi-
neering 10(4): 405-435 (2005).
5. Elbaum, S. G., Malishevsky, A. G., and Rothermel, G., (2000). Prioritizing test cases for
regression testing. ISSTA 2000: 102-112.
6. Hamlet, R. G., (1977). Testing Programs with the Aid of a Compiler. IEEE Transactions on
Software Engineering 3(4): 279-290 (1977).
7. Hussain, S., (2008). Mutation Clustering. Master’s Thesis, King’s College London, Strand,
London, 2008.
8. Mathur, A. P., (1991). Performance, Effectiveness, and Reliability Issues in Software Test-
ing. COMPSAC 1991: 604–605.
9. Offutt, A. J., Lee, A., Rothermel, G., Untch, R. H., and Zapf, C., (1996). An Experimental
Determination of Sufficient Mutant Operators. ACM Transactions on Software Engineering
and Methodology 5(2): 99-118 (1996).
16