Within the domain of software testing, heuristic-based optimization techniques have been employed to facilitate automated code coverage analysis. However, the inherent interdependencies in real-world program code pose significant challenges for conventional Genetic Algorithm (GA)-based approaches in Search-Based Software Testing (SBST). Our solution, Ariadne, is a pioneering Grammatical Evolution (GE)-based SBST technique. It uniquely employs an attribute grammar to leverage these variable dependencies, enhancing condition-decision coverage. Ariadne was named after the mythological figure who helped Theseus find his way out of the Minotaur's Labyrinth. Empirical studies have demonstrated Ariadne's superior performance compared to established test data generation methodologies. We further aim to augment Ariadne's capabilities to interpret more intricate sets of interdependencies, and to explore the potential of a GE-based system in evolving test programs for object-oriented testing. Moreover, we will also be examining the performance of Ariadne for LLM (e.g., ChatGPT) generated testing problems. The successful realization of these goals will not only advance the efficacy of Ariadne but also pave the way for the broader application of grammar-based GAs in SBST, offering a more robust alternative to traditional GAs.
PI
Supervisor



