Preserving Inter-gene Relations During Test Case Generation using Intelligent Evolutionary Operators

Bachelor Thesis (2020)
Author(s)

D.M. Stallenberg (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Contributor(s)

Annibale Panichella – Mentor (TU Delft - Software Engineering)

Mitchell Olsthoorn – Mentor (TU Delft - Software Engineering)

P Przemysław – Graduation committee member (TU Delft - Embedded Systems)

Faculty
Electrical Engineering, Mathematics and Computer Science
Copyright
© 2020 Dimitri Stallenberg
More Info
expand_more
Publication Year
2020
Language
English
Copyright
© 2020 Dimitri Stallenberg
Graduation Date
22-06-2020
Awarding Institution
Delft University of Technology
Project
CSE3000 Research Project
Programme
Computer Science and Engineering
Faculty
Electrical Engineering, Mathematics and Computer Science
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Randomized variational operators can be very disruptive to the search process, especially when there exist dependencies between the variables under search. Within test-cases, these dependencies exist as well. This makes it interesting to evaluate the benefits of preserving these dependencies during test-case generation.

In this paper, we propose two variants of the Many-Objective Sorting Algorithm (MOSA). The first of which is based on Agglomerative Clustering, ACMOSA. The second is a Gene-pool Optimal Mixing based variant, GOMOSA. ACMOSA and GOMOSA model the inter-gene dependencies and use that model to intelligently perform crossover while preserving key building blocks within individuals. These novel techniques are evaluated in an empirical study and compared to MOSA and the Many Independent Objective algorithm (MIO). This study is composed of several benchmark RESTful APIs for which the algorithms generate test-cases.

The results of the empirical study show that, for 40% of the tested APIs, the novel techniques provide a significant benefit time-wise. For another 40% of the APIs, they perform equally well, and for 20% of the APIs under evaluation they performed worse.

Files

License info not available