NEAISEFeb 14, 2023

Genetic Micro-Programs for Automated Software Testing with Large Path Coverage

arXiv:2302.07646v11 citationsh-index: 15
Originality Incremental advance
AI Analysis

This addresses inefficiencies in software testing for developers, though it appears incremental as it builds on existing search-based testing methods.

The paper tackles the problem of lengthy search times in automated software testing by proposing a genetic programming framework that evolves micro-programs to generate input values, aiming for high path coverage without requiring instrumentation for each component.

Ongoing progress in computational intelligence (CI) has led to an increased desire to apply CI techniques for the purpose of improving software engineering processes, particularly software testing. Existing state-of-the-art automated software testing techniques focus on utilising search algorithms to discover input values that achieve high execution path coverage. These algorithms are trained on the same code that they intend to test, requiring instrumentation and lengthy search times to test each software component. This paper outlines a novel genetic programming framework, where the evolved solutions are not input values, but micro-programs that can repeatedly generate input values to efficiently explore a software component's input parameter domain. We also argue that our approach can be generalised such as to be applied to many different software systems, and is thus not specific to merely the particular software component on which it was trained.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes