Evolutionary testing of object-oriented software

Authors
Publication date 2010
Host editors
  • D. Shin
Book title SAC '10: Proceedings of the 2010 ACM Symposium on Applied Computing
ISBN
  • 9781605586397
Event 25th Annual ACM Symposium on Applied Computing (SAC 2010), Sierre, Switzerland
Pages (from-to) 1126-1130
Publisher New York, NY, USA: ACM
Organisations
  • Faculty of Science (FNWI) - Informatics Institute (IVI)
Abstract
It is estimated that 80% of software development cost is spent on detecting and fixing defects. To tackle this issue, a number of tools and testing techniques have been developed to improve the existing testing framework. Although techniques such as static analysis, random testing and evolutionary testing have been used to automate the testing process, it is not clear what is the best approach. Previous research on evolutionary testing has mainly focused on procedural programming languages with code coverage as the main optimization parameter. In this work, we present an approach that combines a genetic algorithm with static analysis to automatically test Eiffel classes using the number of faults found as the optimization parameter. A total of 115 experiments on 22 Eiffel classes were executed to evaluate the effectiveness of evolutionary testing compared to the results obtained by running a random test case generator for 15, 30 and 60 minutes. The results show a genetic algorithm combined with static analysis can considerably increase the number of faults found compared to a random testing approach. In some cases, evolutionary testing found more faults in 15 minutes than a random testing strategy found in 60 minutes.
Document type Conference contribution
Language English
Published at https://doi.org/10.1145/1774088.1774326
Permalink to this page
Back