As the paradigm of object orientation becomes more and more important for modern IT development projects, the demand for an automated test case generation to dynamically test object-oriented software increases. While search-based test case generation strategies, such as evolutionary testing, are well researched for procedural software, relatively little research has been done in the area of evolutionary object-oriented software testing.This paper presents an approach with which to apply evolutionary algorithms for the automatic generation of test cases for the white-box testing of object-oriented software. Test cases for testing object-oriented software include test programs which create and manipulate objects in order to achieve a certain test goal. Strategies for the encoding of test cases to evolvable data structures as well as ideas about how the objective functions could allow for a sophisticated evaluation are proposed. It is expected that the ideas herein can be adapted for other unit testing methods as well.The approach has been implemented by a prototype for empirical validation. In experiments with this prototype, evolutionary testing outperformed random testing. Evolutionary algorithms could be successfully applied for the white-box testing of object-oriented software.
[1]
Hartmut Pohlheim,et al.
Genetic and evolutionary algorithm toolbox for use with matlab
,
1994
.
[2]
Bogdan Korel,et al.
The chaining approach for software test data generation
,
1996,
TSEM.
[3]
John A. Clark,et al.
INVESTIGATING THE APPLICABILITY OF TRADITIONAL TEST ADEQUACY CRITERIA FOR OBJECT-ORIENTED PROGRAMS
,
2000
.
[4]
André Baresel,et al.
Fitness Function Design To Improve Evolutionary Structural Testing
,
2002,
GECCO.
[5]
Joachim Wegener,et al.
Using Evolutionary Testing to improve Efficiency and Quality in Software Testing
,
2002
.
[6]
Phil McMinn,et al.
Search‐based software test data generation: a survey
,
2004,
Softw. Test. Verification Reliab..
[7]
Paolo Tonella,et al.
Evolutionary testing of classes
,
2004,
ISSTA '04.
[8]
Phil McMinn,et al.
Hybridizing Evolutionary Testing with the Chaining Approach
,
2004,
GECCO.